Re: "Fix affected rows after insert with prepared query" side effect
John Kendall <[email protected]>
| Newsgroups | gmane.comp.db.tds.freetds |
|---|---|
| Message-ID | <[email protected]> |
On May 11, 2016, at 1:23 PM, Frediano Ziglio <[email protected]> wrote: > 2016-05-11 6:07 GMT+01:00 John Kendall <[email protected]>: >> >>> On May 10, 2016, at 3:34 PM, Frediano Ziglio <[email protected]> wrote: >>> >>> 2016-05-10 22:31 GMT+01:00 John Kendall <[email protected]>: >>>> It appears the patch for this ("fix ct-library rows count") has broken compute in ctlib: >>>> >>>> >>>> select col=1 into #tbl insert #tbl values (2) select * from #tbl compute sum(col) >>>> (1 row affected) >>>> (1 row affected) >>>> col >>>> ----------- >>>> 1 >>>> 2 >>>> 2 >>>> >>>> (3 rows affected) >>>> >>>> dblib (and ctlib RC1) does the expected: >>>> >>>> select col=1 into #tbl insert #tbl values (2) select * from #tbl compute sum(col) >>>> (1 row affected) >>>> (1 row affected) >>>> col >>>> ----------- >>>> 1 >>>> 2 >>>> sum >>>> =========== >>>> 3 >>>> >>>> (3 rows affected) >>>> >>>> >>>> Sorry to keep finding things! >>>> >>>> John >>>> >>>> >>> >>> Can you put some more detailed examples? Which program did you use? >>> >>> Frediano >> >> I'm using sqsh. >> >> The compute clause should return an extra result line. In the example I have given above, the table is a single column table with two rows with values 1 and 2. Adding the compute sum clause to the select should return a compute result of 3, instead it is returns an extra copy of the last row. My example is not a special case, no compute (sum, max, min, avg, etc) results seem to be returning from any queries with a compute clause. I never saw this problem before RC4. Backing out the 'fix ct-library rows count' patch on ct.c makes it return the expected result. >> >> John >> > > > Just to be sure, can you test 1.0rc5 ? > I already have. And it looks good. Thanks. While I have your attention, and you are in that part of the code, I wonder if you might look into this: http://lists.ibiblio.org/pipermail/freetds/2016q1/029725.html I want to clarify what I'm asking you to look into. That was a multi-topic thread. The problem I am still interested in fixing is the ct_compute_info return values. (The rest of that thread turned out to just be client differences.) > Frediano > _______________________________________________ > FreeTDS mailing list > [email protected] > http://lists.ibiblio.org/mailman/listinfo/freetds