I vote for DB.exec

On Thu, Oct 15, 2009 at 4:09 PM, Derek Chen-Becker <dchenbec...@gmail.com>wrote:

> OK, I found what's happening. Logging is getting called in the private
> DB.runPreparedStatement, and also in the DB.exec method. Mapper uses exec
> within the runPreparedStatement call. It seems like exec is the more
> appropriate place to be running the logging, since you could have multiple
> execs on a prepared statement but you generally wouldn't prepare a statement
> without executing it. Thoughts on removing the logging from
> runPreparedStatement?
>
> Derek
>
>
> On Wed, Oct 14, 2009 at 11:42 PM, Derek Chen-Becker <dchenbec...@gmail.com
> > wrote:
>
>> I don't think so. In this case I'm seeing a ResultSet in both log entries,
>> which shouldn't show up in the part where it's being prepared.
>>
>> Derek
>>
>>
>> On Tue, Oct 13, 2009 at 6:09 PM, Jonathan Ferguson <j...@spiralarm.com>wrote:
>>
>>> Is this related to a previous query dated 15 Sept, the title was
>>> [Lift] Mapper: Why is every SQL query sent twice? (second time with NULL
>>> parameters)
>>> The response from @dpp was
>>>
>>> "The SQL is not being sent twice.  There are two different points (when
>>> the Statement is created and after the Statement is executed) that the same
>>> query is logged."
>>>
>>>
>>> Cheers
>>> Jono
>>>
>>>
>>> 2009/10/14 Derek Chen-Becker <dchenbec...@gmail.com>
>>>
>>>  OK, I'm seeing the same thing here. I'll open an issue and work on it.
>>>>
>>>> Derek
>>>>
>>>>
>>>> On Tue, Oct 13, 2009 at 10:07 AM, harryh <har...@gmail.com> wrote:
>>>>
>>>>>
>>>>> I'm also seeing this double logging behavior (using PostgreSQL.  I was
>>>>> under the impression that it was happening because the SQL statement
>>>>> is first prepared, and then executed (each of which cause a log
>>>>> entry).  It's not critical or anything, but it would be nice if this
>>>>> could be fixed at some point.
>>>>>
>>>>> -harryh
>>>>>
>>>>> On Oct 13, 10:28 am, Derek Chen-Becker <dchenbec...@gmail.com> wrote:
>>>>> > I'm not sure how that could be getting logged twice, especially since
>>>>> it's
>>>>> > the exact same ResultSet being returned. When I tested this on my
>>>>> local app
>>>>> > (against both PG and MySQL) I didn't get this behavior, but I'll try
>>>>> pulling
>>>>> > from master and testing again just in case something changed.
>>>>> >
>>>>> > Derek
>>>>> >
>>>>> > On Tue, Oct 13, 2009 at 6:56 AM, Jeppe Nejsum Madsen <
>>>>> je...@ingolfs.dk>wrote:
>>>>> >
>>>>> >
>>>>> >
>>>>> > > Hi,
>>>>> >
>>>>> > > Just wanted to update to the new db logging by adding the following
>>>>> to
>>>>> > > boot:
>>>>> >
>>>>> > >  DB.addLogFunc {
>>>>> > >      case (query:DBLog, time) => {
>>>>> > >        LogBoot.loggerByName("query").info(">>> All queries took " +
>>>>> time +
>>>>> > > "ms: ")
>>>>> > >        query.statementEntries.foreach({ case DBLogEntry(stmt,
>>>>> duration) =>
>>>>> > > LogBoot.loggerByName("query").info("    "+stmt + " took " +
>>>>> duration +
>>>>> > > "ms")})
>>>>> > >        LogBoot.loggerByName("query").info("<<< End queries")
>>>>> > >      }
>>>>> > >    }
>>>>> >
>>>>> > > But it seems all executed statements are logged twice. I have this
>>>>> > > snippet:
>>>>> >
>>>>> > > def currentUser(xhtml: Group): NodeSeq =
>>>>> > > Text(User.currentUser.dmap(S.?("Anonym"))(user => user.firstName +
>>>>> " " +
>>>>> > > user.lastName))
>>>>> >
>>>>> > > This logs:
>>>>> >
>>>>> > > 14:46:09.068 [tp-1029120287-4] INFO  query
>>>>>        -
>>>>> > > >>> All queries took 5ms:
>>>>> > > 14:46:09.068 [tp-1029120287-4] INFO  query
>>>>>        -
>>>>> > >     Exec query "SELECT users.id, users.firstname, users.lastname,
>>>>> > > users.email, users.locale, users.timezone, users.password_pw,
>>>>> > > users.password_slt, users.account_id, users.superuser,
>>>>> users.uniqueid,
>>>>> > > users.validated FROM users WHERE id = 2 (scale -5)" :
>>>>> > > org.postgresql.jdbc4.jdbc4result...@77f31432 took 4ms
>>>>> > > 14:46:09.069 [tp-1029120287-4] INFO  query
>>>>>        -
>>>>> > > <<< End queries
>>>>> > > 14:46:09.069 [tp-1029120287-4] INFO  query
>>>>>        -
>>>>> > > >>> All queries took 8ms:
>>>>> > > 14:46:09.069 [tp-1029120287-4] INFO  query
>>>>>        -
>>>>> > >     Exec query "SELECT users.id, users.firstname, users.lastname,
>>>>> > > users.email, users.locale, users.timezone, users.password_pw,
>>>>> > > users.password_slt, users.account_id, users.superuser,
>>>>> users.uniqueid,
>>>>> > > users.validated FROM users WHERE id = 2 (scale -5)" :
>>>>> > > org.postgresql.jdbc4.jdbc4result...@77f31432 took 4ms
>>>>> > > 14:46:09.069 [tp-1029120287-4] INFO  query
>>>>> > > - <<< End queries
>>>>> >
>>>>> > > Note the same resultset. The postgres logs also shows that only a
>>>>> single
>>>>> > > statement is executed....
>>>>> >
>>>>> > > So, what did I miss?
>>>>> >
>>>>> > > /Jeppe
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>
>
> >
>


-- 
Viktor Klang

Blog: klangism.blogspot.com
Twttr: viktorklang
Wave: viktor.kl...@googlewave.com
Code: github.com/viktorklang

AKKA Committer - akkasource.org
Lift Committer - liftweb.com
Atmosphere Committer - atmosphere.dev.java.net
SoftPub founder: http://groups.google.com/group/softpub

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Lift" group.
To post to this group, send email to liftweb@googlegroups.com
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to