Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Exception in PGConnection #23

Open
KingDuckZ opened this issue Apr 19, 2014 · 1 comment
Open

Exception in PGConnection #23

KingDuckZ opened this issue Apr 19, 2014 · 1 comment

Comments

@KingDuckZ
Copy link

As per the title, initialization always fails with the following backtrace:

object.Exception@/home/michele/dev/code/d/ovonovo/libs/ddb/ddb/db.d(288): Received field count is not equal to Tuple!(uint, "arrayOid", uint, "elemOid")'s field count

0x44635e pure void ddb.db.DBRow!(uint, "arrayOid", uint, "elemOid").DBRow.checkReceivedFieldCount(int)
/home/michele/dev/code/d/ovonovo/libs/ddb/ddb/db.d:288
0x44a2b4 ddb.db.DBRow!(uint, "arrayOid", uint, "elemOid").DBRow ddb.postgres.PGConnection.fetchRow!(uint, "arrayOid", uint, "elemOid").fetchRow(ref ddb.postgres.Message, ref immutable(ddb.postgres.PGField)[])
/home/michele/dev/code/d/ovonovo/libs/ddb/ddb/postgres.d:1436
0x445f6a void ddb.postgres.PGResultSet!(uint, "arrayOid", uint, "elemOid").PGResultSet.popFront()
/home/michele/dev/code/d/ovonovo/libs/ddb/ddb/postgres.d:2186
0x4461b5 int ddb.postgres.PGResultSet!(uint, "arrayOid", uint, "elemOid").PGResultSet.opApply(int delegate(ref ddb.db.DBRow!(uint, "arrayOid", uint, "elemOid").DBRow))
/home/michele/dev/code/d/ovonovo/libs/ddb/ddb/postgres.d:2216
0x43927d void ddb.postgres.PGConnection.reloadArrayTypes()
/home/michele/dev/code/d/ovonovo/libs/ddb/ddb/postgres.d:1729
0x439a89 void ddb.postgres.PGConnection.reloadAllTypes()
/home/michele/dev/code/d/ovonovo/libs/ddb/ddb/postgres.d:1797
0x438c9e ddb.postgres.PGConnection ddb.postgres.PGConnection.__ctor(const(immutable(char)[][immutable(char)[]]))
/home/michele/dev/code/d/ovonovo/libs/ddb/ddb/postgres.d:1678
0x40922b ddb.postgres.PGConnection main.GetNewDBConnection()
/home/michele/dev/code/d/ovonovo/src/main.d:7
0x409564 Dmain
/home/michele/dev/code/d/ovonovo/src/main.d:38
0x4609be void rt.dmain2.d_run_main(int, char**, extern (C) int function(char[][])*).runAll().void _lambda1()
../../../../gcc-4.8.2/libphobos/libdruntime/rt/dmain2.d:412
0x460e8e void rt.dmain2.d_run_main(int, char**, extern (C) int function(char[][])).tryExec(scope void delegate())
../../../../gcc-4.8.2/libphobos/libdruntime/rt/dmain2.d:387
0x4610d8 void rt.dmain2.d_run_main(int, char
, extern (C) int function(char[][])
).runAll()
../../../../gcc-4.8.2/libphobos/libdruntime/rt/dmain2.d:412
0x460e8e void rt.dmain2.d_run_main(int, char*, extern (C) int function(char[][])
).tryExec(scope void delegate())
../../../../gcc-4.8.2/libphobos/libdruntime/rt/dmain2.d:387
0x46100f _d_run_main
../../../../gcc-4.8.2/libphobos/libdruntime/rt/dmain2.d:420
0x40913c main
/opt/gdc/include/d/4.8.2/__entrypoint.di:59
0x7f317eefec14 ???
???:0
0x408f54 ???
???:0
0xffffffffffffffff ???
???:0

I'm not sure what's going wrong on my system, running the queries from postgres.d line 1723 and 1739 in psql I get a list of non-null positive integer pairs. I'm new to D so I'm not sure how to fix this problem. I'm running a 64-bit gentoo system.

Also, please fix the warning on line 1366. Doing as the compiler says fixes the warning for me:

error: std.algorithm.indexOf!("a == b", string, char).indexOf at /opt/gdc/include/d/4.8.2/std/algorithm.d:4828 conflicts with std.string.indexOf!char.indexOf at /opt/gdc/include/d/4.8.2/std/string.d:252
libs/ddb/ddb/postgres.d:1366: warning: function std.algorithm.indexOf!("a == b", string, char).indexOf is deprecated - Please use std.algorithm.countUntil instead.

@jongiddy
Copy link
Contributor

PR #24 solves the "Also, please fix the warning on line 1366" part of this issue, by explicitly identifying that the compiler should use std.string.indexOf. It does not use std.algorithm.countUntil because we know this string will not contain any non-ASCII Unicode characters.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants