Обсуждение: Debugging the JDBC drivers...

Поиск
Список
Период
Сортировка

Debugging the JDBC drivers...

От
Christian Cryder
Дата:
Couple of questions as I dive into debugging the JDBC drivers.

1. is this the correct place to ask questions of the JDBC developers?
Or is there a separate dev list?

2. I am invoking PreparedStatement.setTimestamp(int i, Timestamp t1)
and I need to figure out where t1 actually gets converted into what
gets sent across the wire. I have found my way to
QueryExecutorImpl.sendBind() [ca. line 770] where I see this debugging
statement:

    FE=> Bind(stmt=null,portal=null,$1=<2005-04-03 02:29:43.000000-0700>)

At this point, t1 is correct, but sometime between here and the actual
insert into the db, it is getting rolled forward an hour. I need help
locating the spot that is doing that.

3. Is there any "roadmap" kind of document that might help me
understand how things are laid out, where to look, etc?

tia,
Christian

Re: Debugging the JDBC drivers...

От
Dave Cramer
Дата:
Christian,

At that point you are seeing what the driver is going to send,

Just below that in the code you should see it actually binding the
timestamp

Dave
On 18-Jul-05, at 2:00 PM, Christian Cryder wrote:

> Couple of questions as I dive into debugging the JDBC drivers.
>
> 1. is this the correct place to ask questions of the JDBC developers?
> Or is there a separate dev list?
>
> 2. I am invoking PreparedStatement.setTimestamp(int i, Timestamp t1)
> and I need to figure out where t1 actually gets converted into what
> gets sent across the wire. I have found my way to
> QueryExecutorImpl.sendBind() [ca. line 770] where I see this debugging
> statement:
>
>     FE=> Bind(stmt=null,portal=null,$1=<2005-04-03
> 02:29:43.000000-0700>)
>
> At this point, t1 is correct, but sometime between here and the actual
> insert into the db, it is getting rolled forward an hour. I need help
> locating the spot that is doing that.
>
> 3. Is there any "roadmap" kind of document that might help me
> understand how things are laid out, where to look, etc?
>
> tia,
> Christian
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 4: Have you searched our list archives?
>
>                http://archives.postgresql.org
>
>


Re: Debugging the JDBC drivers...

От
Dave Cramer
Дата:
Christian,


The next thing that happens is that it gets sent in a bind message
after being converted to Unicode. Look at
SimpleParameterList.writeV3Value in org.postgresql.core.v3

// Encoded string.
         if (encoded[index] == null)
             encoded[index] = Utils.encodeUTF8((String)paramValues
[index]);
         pgStream.Send(encoded[index]);


Dave
On 18-Jul-05, at 2:00 PM, Christian Cryder wrote:

> Couple of questions as I dive into debugging the JDBC drivers.
>
> 1. is this the correct place to ask questions of the JDBC developers?
> Or is there a separate dev list?
>
> 2. I am invoking PreparedStatement.setTimestamp(int i, Timestamp t1)
> and I need to figure out where t1 actually gets converted into what
> gets sent across the wire. I have found my way to
> QueryExecutorImpl.sendBind() [ca. line 770] where I see this debugging
> statement:
>
>     FE=> Bind(stmt=null,portal=null,$1=<2005-04-03
> 02:29:43.000000-0700>)
>
> At this point, t1 is correct, but sometime between here and the actual
> insert into the db, it is getting rolled forward an hour. I need help
> locating the spot that is doing that.
>
> 3. Is there any "roadmap" kind of document that might help me
> understand how things are laid out, where to look, etc?
>
> tia,
> Christian
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 4: Have you searched our list archives?
>
>                http://archives.postgresql.org
>
>