Project

General

Profile

Bug #10080

Temp-table records are leaking in can-find statements

Added by Dănuț Filimon about 1 year ago. Updated about 1 year ago.

Status:
Test
Priority:
Normal
Assignee:
Target version:
-
Start date:
Due date:
% Done:

100%

billable:
No
vendor_id:
GCD
case_num:
version_reported:
version_resolved:
production:
No
env_name:
topics:

History

#2 Updated by Dănuț Filimon about 1 year ago

Original test case can be found in #8308-505. There are also more tests committed in xfer testcases/1753.

The changes from trunk/15915 were reverted in trunk/15956, the goal is to fix the scenario from #10076-1 and expand the test suite.

#3 Updated by Șerban Bursuc about 1 year ago

The scenario from #10076-1 is:

define temp-table tt1
field f1 as character. 

define temp-table tt2
field f1 as character.

create tt1.
tt1.f1 = "a".

create tt2.
tt2.f1 = "b".

empty temp-table tt1.

for each tt2:
    create tt1.
    assign tt1.f1 = tt2.f1.
end.

for each tt2 where not can-find(first tt1 where tt1.f1 = tt2.f1):
    delete tt2.
end.

for each tt1:
    message "tt1" tt1.f1.
end.

for each tt2:
    message "tt2" tt2.f1.
end.

OE output is:
tt1 b
tt2 b

FWD with changes from 15915:
tt1 b

FWD without changes from 15915:
tt1 b
tt2 b

#4 Updated by Eduard Soltan about 1 year ago

  • Assignee set to Eduard Soltan

#5 Updated by Eduard Soltan about 1 year ago

  • % Done changed from 0 to 100
  • Status changed from New to WIP

Committed on 10080a, rev. 15964.

The parameters where not updating in case there were a multiplex id injected in the where clause for TemporaryBuffer.removeRecords query.

#6 Updated by Eduard Soltan about 1 year ago

  • Status changed from WIP to Review
  • reviewer Ovidiu Maxiniuc added

#7 Updated by Ovidiu Maxiniuc about 1 year ago

  • Status changed from Review to Internal Test

I see nothing wrong with 10080a r15964.

Please proceed with testing (those from #8308 should do it) if the regression if fixed.

#9 Updated by Constantin Asofiei about 1 year ago

Eduard, please see #10088-57 - is this task fixing the CAN-FIND sub-select, so that now it correctly has the _multiplex augmentation for the temp-table in a WHERE ... CAN-FIND?

Also, does this now also works?

for each tt2 where not can-find(first tt1 where tt1.f1 = tt2.f1):
    message tt2.f1.
end.

#10 Updated by Eduard Soltan about 1 year ago

Constantin Asofiei wrote:

Eduard, please see #10088-57 - is this task fixing the CAN-FIND sub-select, so that now it correctly has the _multiplex augmentation for the temp-table in a WHERE ... CAN-FIND?

Yes, this 2 tasks have the same root cause.

Also, does this now also works?

Yes, this test case does work.

#11 Updated by Eduard Soltan about 1 year ago

Tested performed:

- unit tests of a large gui application ✅
- chui regression tests ✅

Is any additional testing needed?

#12 Updated by Eduard Soltan about 1 year ago

Updated query/canfindmultiplex testcases.

#13 Updated by Stefanel Pezamosca about 1 year ago

Eduard Soltan wrote:

Tested performed:

- unit tests of a large gui application ✅
- chui regression tests ✅

Is any additional testing needed?

Eduard, Are the tests from #8308 still passing? I believe this should go into trunk, as it also addresses the main issue identified in #10088.
I can confirm that the regression from #10076-1 is fixed.

#14 Updated by Eduard Soltan about 1 year ago

Yes, they are passing and received the news from Danut that ETF has passed.

#15 Updated by Constantin Asofiei about 1 year ago

Can this be queued for merge?

#16 Updated by Eduard Soltan about 1 year ago

- unit tests and smoke tests of a large gui application ✅
- chui regression tests ✅
- smoke tests of a gui application ✅
- fwd tests ✅

Still haven't got an response from harness/web/report of an application testing.

#17 Updated by Lorian Sandu about 1 year ago

Eduard Soltan wrote:

Still haven't got an response from harness/web/report of an application testing.

Testing passed!

#18 Updated by Constantin Asofiei about 1 year ago

  • Status changed from Internal Test to Merge Pending

Go ahead and merge now.

#19 Updated by Eduard Soltan about 1 year ago

  • Status changed from Merge Pending to Test

10080a was merged to trunk rev 15986 and archived.

#20 Updated by Dănuț Filimon about 1 year ago

Eduard, 8308f wasn't backed out from 7156c/e. Please commit the necessary changes from 10080a to 7156c and 7156e.

#21 Updated by Eduard Soltan about 1 year ago

Sure.

Also available in: Atom PDF