Project

General

Profile

Activity

From 07/26/2025 to 08/24/2025

08/22/2025

02:03 PM Feature #6720: lazy hydration
I have continued with addressing the functional issues I have found in the large GUI application. These were also mai... Andrei Plugaru
06:55 AM Bug #10390: FIND FIRST buffer field change does not propagate into the next FIRST FIRST statements.
Alexandru Lungu wrote:
> Ah, I see. The DMO is updated and validated. It is inserted in the @RecordNursery@ for futu...
Teodor Gorghe

08/21/2025

07:34 AM Support #10420: Refactoring DMO interface layers
The app-by-app conversion process customizes DMO naming by delegating all of the *TRPL processing* to a dedicated Jav... Octavian Adrian Gavril
06:17 AM Bug #10390 (Review): FIND FIRST buffer field change does not propagate into the next FIRST FIRST ...
Teodor Gorghe
06:17 AM Bug #10390 (WIP): FIND FIRST buffer field change does not propagate into the next FIRST FIRST sta...
Committed revision *16102* on task branch *10390a*:
- Allow FIND UNIQUE to retrieve dmo from dirty database when dmo...
Teodor Gorghe
03:13 AM Bug #10455 (Review): Persistent table CAN-FIND FIRST issue
Committed revision *16124* on task branch *10455a*:
- Commit changes to @DirtyShareContext@ on open block scope when...
Teodor Gorghe
03:12 AM Bug #10455 (WIP): Persistent table CAN-FIND FIRST issue
Created task branch *10455a*. Teodor Gorghe
02:23 AM Bug #10455: Persistent table CAN-FIND FIRST issue
I have continued the research for this problem, and I have noticed the following:
* On @DirtyShareContext.getDirtyIn...
Teodor Gorghe

08/20/2025

10:05 AM Bug #10455: Persistent table CAN-FIND FIRST issue
I have investigated more about this issue.
The original code that was here, actually worked, it was just the dirty i...
Teodor Gorghe
05:36 AM Bug #10455: Persistent table CAN-FIND FIRST issue
The following test fails on FWD:... Teodor Gorghe
05:32 AM Bug #10455 (Closed): Persistent table CAN-FIND FIRST issue
Teodor Gorghe

08/19/2025

09:29 AM Feature #10436: Detect Sequential Data Access and Prefetch Records from the Database
In RandomAccessQuery:
1. Detect sequential increment of a subset of substitution value for the fql.
* Add a smal...
Artur Școlnic
09:14 AM Support #6709: track nested FIND inside a related FOR loop
Rebased *6709a* to latest *trunk/16122*, the branch is now at revision *16129*. Dănuț Filimon
09:02 AM Bug #9016: Improve performance in FQLPreprocessor by using astCache
Alexandru, let me know if you have any plans to review 9016a or add it directly to the work from #10362. Dănuț Filimon
09:00 AM Bug #9078: emit FindQuery as (reused) variables
Rebased *9078b* to latest *trunk/16122*, the branch is now at revision *16134*. Dănuț Filimon
03:58 AM Bug #10398 (Internal Test): Incorrect base data type used in buffer dereference
Looks good, thanks. Constantin Asofiei
03:52 AM Bug #10398: Incorrect base data type used in buffer dereference
Committed revision 16112 on task branch 10398a:
- ABS builtin function should not raise error condition when bdt is ...
Teodor Gorghe
03:47 AM Bug #10398: Incorrect base data type used in buffer dereference
Please check if the @bdt.isUnknown()@, also - I assume no ERROR condition is raised in this case, and it just returns... Constantin Asofiei
03:46 AM Bug #10398: Incorrect base data type used in buffer dereference
Committed revision *16111* on task branch *10398a*:
- @ABS@ builtin function should raise error condition when the d...
Teodor Gorghe
03:12 AM Bug #10398: Incorrect base data type used in buffer dereference
Please work on this as Eduard is out. I'd like to have this and #10406 in trunk so we can run another conversion. Constantin Asofiei
03:07 AM Bug #10398: Incorrect base data type used in buffer dereference
Then a character field has a valid number representation, this still does throw the same error.
On this and on the p...
Teodor Gorghe
03:01 AM Bug #10398: Incorrect base data type used in buffer dereference
The incompatible data type error is thrown (223) when the input parameter is not an NumberType, with an Error conditi... Teodor Gorghe
02:46 AM Bug #10398: Incorrect base data type used in buffer dereference
The change looks good. The only unknown is what happens if @h::f1@ is i.e. a character - is there an ERROR condition... Constantin Asofiei
02:45 AM Bug #10351 (Test): ProDataSet READ-XML issue when temp-table node is the same as dataset node
Branch 10351a was merged to trunk rev 16121 and archived. Teodor Gorghe
02:22 AM Bug #10351 (Merge Pending): ProDataSet READ-XML issue when temp-table node is the same as dataset...
10351a can be merged after 10360a Constantin Asofiei
01:52 AM Bug #10351: ProDataSet READ-XML issue when temp-table node is the same as dataset node
Yes, now is ready to be merged. Teodor Gorghe
02:33 AM Bug #10360 (Test): FOR loop WHERE condition evaluation issue
Branch *10360a* was merged to trunk rev *16120* and archived. Teodor Gorghe
02:22 AM Bug #10360 (Merge Pending): FOR loop WHERE condition evaluation issue
10360a can be merged now. Constantin Asofiei

08/18/2025

07:58 AM Support #10420: Refactoring DMO interface layers
This would certainly solve the concern I had in #9976 and much more. It seems to me that the performance of this pro... Greg Shah
10:36 PM Support #10420: Refactoring DMO interface layers
I am going to propose you a radical change in the way we interact with the buffers. This is a new paradigm, maybe clo... Ovidiu Maxiniuc
06:13 AM Feature #10436: Detect Sequential Data Access and Prefetch Records from the Database
Prefetching records into cache can significantly improve performance, especially when access patterns are predictable... Artur Școlnic
06:11 AM Feature #10436 (WIP): Detect Sequential Data Access and Prefetch Records from the Database
Artur Școlnic

08/14/2025

07:01 AM Feature #6720: lazy hydration
> Yes, but this was actually the case even before #9701. The return value of the @equalData@ method is used to update... Greg Shah
04:11 AM Feature #6720: lazy hydration
Thanks Alex for the comprehensive overview. I will think about the refactoring of @FIND CURRENT@ and maybe others ins... Andrei Plugaru
03:46 AM Feature #6720: lazy hydration
> I'm not OK with limiting this implementation to only FOR EACH. Large percentages of application queries would be mi... Alexandru Lungu
03:31 AM Feature #6720: lazy hydration
Greg Shah wrote:
> Are you saying that we force hydration of all fields any time @BaseRecord.equalData@ is called? ...
Andrei Plugaru
05:37 AM Bug #9016: Improve performance in FQLPreprocessor by using astCache
Rebased *9016a* to latest *trunk/16114*, the branch is now at revision *16115*. Dănuț Filimon
04:29 AM Feature #9455 (Internal Test): port native user defined functions to SQL Server
Tests performed with udfs are:
- @testcases/udfs/t-sql@ these are refactored tests in T-SQL language from @testca...
Eduard Soltan

08/13/2025

12:36 PM Feature #6720: lazy hydration
> @16110@ and @16112@: Apart from unimportant rebase issues, I have changed the implementation of @BaseRecord.equalD... Greg Shah
12:07 PM Feature #6720: lazy hydration
> The original implementation of #6720 was to cover as many scenarios as possible, but the @OPEN QUERY@ and @FIND FIR... Greg Shah
08:22 AM Feature #6720: lazy hydration
I have got back to working on this task. I have started with the rebase of the @6720b@ branch. I have rebased to trun... Andrei Plugaru
09:31 AM Support #10420: Refactoring DMO interface layers
Ovidiu suggested to use @default@ to delegate from the @get@ / @set@ to the super-interface cryptic methods (@get1@, ... Alexandru Lungu
09:26 AM Support #10420: Refactoring DMO interface layers
This task is used to discuss how we should avoid non-deterministic naming of DMOs in multithreaded conversion. The in... Octavian Adrian Gavril
08:38 AM Support #10420 (New): Refactoring DMO interface layers
Octavian Adrian Gavril

08/12/2025

12:38 PM Bug #10398 (Review): Incorrect base data type used in buffer dereference
Eduard Soltan
12:38 PM Bug #10398 (WIP): Incorrect base data type used in buffer dereference
Committed on 10398, rev. 16110. Eduard Soltan
11:40 AM Feature #9456: implement SQL Server dialect and helpers
Alexandru Lungu wrote:
> I added Tomasz as I watcher. Tomasz, can you review 9456b (@SortCriterion.toWhereExpendeNUl...
Tomasz Domin
08:22 AM Bug #10390: FIND FIRST buffer field change does not propagate into the next FIRST FIRST statements.
Ah, I see. The DMO is updated and validated. It is inserted in the @RecordNursery@ for future use. It is required at ... Alexandru Lungu
08:15 AM Bug #10390: FIND FIRST buffer field change does not propagate into the next FIRST FIRST statements.
Alexandru Lungu wrote:
> Teodor, there is a particularity of FIND unique in the sense that if there are ambiguous re...
Teodor Gorghe
08:14 AM Bug #10390: FIND FIRST buffer field change does not propagate into the next FIRST FIRST statements.
Teodor, there is a particularity of FIND unique in the sense that if there are ambiguous results, calling @AMBIGUOUS ... Alexandru Lungu
07:30 AM Bug #10390 (Feedback): FIND FIRST buffer field change does not propagate into the next FIRST FIRS...
What happens for the @FIND@ unique case, which is different from the @FIND@ first case:
- The flow is mostly similar...
Teodor Gorghe
05:51 AM Bug #10390 (WIP): FIND FIRST buffer field change does not propagate into the next FIRST FIRST sta...
While the initial test case was done, I have also encountered the following test case, which is very similar to the p... Teodor Gorghe
03:02 AM Bug #10390 (Review): FIND FIRST buffer field change does not propagate into the next FIRST FIRST ...
Committed revision *16101* on task branch *10390a*:
- @RandomAccessQuery.executeImpl@ allow dmo to be changed before...
Teodor Gorghe
02:55 AM Bug #10390 (WIP): FIND FIRST buffer field change does not propagate into the next FIRST FIRST sta...
Created task branch *10390a*. Teodor Gorghe

08/11/2025

09:15 AM Bug #10399: Index selection in dirty database
... Eduard Soltan
09:02 AM Bug #10399 (New): Index selection in dirty database
Eduard Soltan
07:37 AM Bug #10360: FOR loop WHERE condition evaluation issue
> I am starting to do internal testing and I will tell if there is a problem.
I am OK with the plan.
Alexandru Lungu
03:56 AM Bug #10360: FOR loop WHERE condition evaluation issue
The trunk revision which changes the @recordOrThrowError@ to @displayError@ is *11301.1.51* #3761.
This also modifie...
Teodor Gorghe
06:55 AM Bug #10337 (Test): Possible memory leak with FastFindCache
Alexandru Lungu
06:47 AM Bug #10337: Possible memory leak with FastFindCache
10337b was merged as rev 16106. Artur Școlnic
06:25 AM Bug #10337: Possible memory leak with FastFindCache
Please merge 10337b to trunk after 10004a. Alexandru Lungu
06:52 AM Bug #10351: ProDataSet READ-XML issue when temp-table node is the same as dataset node
Teodor, is this ready to be merged? Alexandru Lungu
06:06 AM Bug #10390: FIND FIRST buffer field change does not propagate into the next FIRST FIRST statements.
I have analyzed the 4GL behavior more in depth. I have added a @ON WRITE@ to check when the *buffer* gets written to ... Teodor Gorghe
05:02 AM Bug #10398: Incorrect base data type used in buffer dereference
I have the following test case:... Eduard Soltan
04:55 AM Bug #10398 (Test): Incorrect base data type used in buffer dereference
Eduard Soltan
04:09 AM Bug #10285 (Test): Static compound query returns no result
Branch @10285a@ has been merged into trunk as rev. 16103. Andrei Plugaru
03:59 AM Bug #10285 (Merge Pending): Static compound query returns no result
Please merge 10285a to trunk now. Alexandru Lungu
02:24 AM Feature #6457 (Review): finish COPY-LOB support
Constantin Asofiei wrote:
> > Because if value was @null@, after this operation we would get something very weird ...
Eduard Soltan

08/08/2025

11:07 AM Bug #10360 (Internal Test): FOR loop WHERE condition evaluation issue
Nevermind. I think the code in #10360 is a super weird edge case.... Alexandru Lungu
11:01 AM Bug #10360 (WIP): FOR loop WHERE condition evaluation issue
Teodor Gorghe wrote:
> I have one question which I've didn't found the answer: Why @ErrorManager.displayError@ is us...
Alexandru Lungu
07:01 AM Bug #10337 (Merge Pending): Possible memory leak with FastFindCache
> I also monitored memory allocation over time, it seems ok. There are still an excessive amount of nodes created and... Alexandru Lungu
02:13 AM Bug #10337: Possible memory leak with FastFindCache
Testing status:
Harness and webui navigation - passed
Large customer application FWDTests and unit tests - passed
...
Artur Școlnic
06:58 AM Bug #10390: FIND FIRST buffer field change does not propagate into the next FIRST FIRST statements.
The following test case has issues on FWD:
{{Collapse(TestFindQueryUpdate.cls)...
Teodor Gorghe
06:54 AM Bug #10390 (Internal Test): FIND FIRST buffer field change does not propagate into the next FIRST...
Teodor Gorghe

08/07/2025

08:37 AM Bug #10351 (Internal Test): ProDataSet READ-XML issue when temp-table node is the same as dataset...
Teodor Gorghe
08:35 AM Bug #10351: ProDataSet READ-XML issue when temp-table node is the same as dataset node
I looked at the changes in 10351a. The way I read the lines at 603/606 is that the root node can be anything (includi... Ovidiu Maxiniuc
01:24 AM Bug #10351: ProDataSet READ-XML issue when temp-table node is the same as dataset node
*Ovidiu*, Constantin ran some tests with a P2J build with changes from this branch.
Can you check the changes from t...
Teodor Gorghe
07:36 AM Bug #10307: FFcache keys don't match for the values inlined vs passed as args
I did put a little thought into how we can inline the arguments into the fql in order to match the FFcache keys for t... Andrei Plugaru
06:54 AM Bug #10360 (Review): FOR loop WHERE condition evaluation issue
Teodor Gorghe
06:54 AM Bug #10360 (WIP): FOR loop WHERE condition evaluation issue
Committed revision *16085* on task branch *10360a*:
- Reverted *16084*. Replaced @displayError@ with @recordOrThrowE...
Teodor Gorghe
06:54 AM Bug #10337: Possible memory leak with FastFindCache
Forgot about that, I'll uncommit.
Artur Școlnic
06:51 AM Bug #10337: Possible memory leak with FastFindCache
> I just realized that we don't actually need the values in the lruCache, it acts more like a queue, so only the node... Alexandru Lungu
06:37 AM Bug #10337: Possible memory leak with FastFindCache
I may have misunderstood things a bit :) Apparently, there are multiple instances of @ReverseLookup@, which means mul... Artur Școlnic
04:32 AM Bug #10337: Possible memory leak with FastFindCache
Artur Școlnic wrote:
> I think the issue is that bulk invalidation where entire caches are cleared or removed do not...
Alexandru Lungu

08/06/2025

11:05 AM Bug #10337: Possible memory leak with FastFindCache
I think the issue is that bulk invalidation where entire caches are cleared or removed do not clean up the associated... Artur Școlnic
09:34 AM Bug #10337: Possible memory leak with FastFindCache
Alexandru Lungu wrote:
> You can decrease the cache size to something like 10 for more straight-forward testing. Or ...
Artur Școlnic
09:26 AM Bug #10337: Possible memory leak with FastFindCache
The same thing happens in trunk, the number of leaked Node instances grows slowly, but surely. After 20 mins of harne... Artur Școlnic
09:01 AM Bug #10337: Possible memory leak with FastFindCache
> I think we are still leaking memory, after one hour or running Harness on loop, there are 500k 'live' Node objects,... Alexandru Lungu
08:58 AM Bug #10337: Possible memory leak with FastFindCache
I think we are still leaking memory, after one hour or running Harness on loop, there are 500k 'live' Node objects, a... Artur Școlnic
07:24 AM Bug #10337 (Internal Test): Possible memory leak with FastFindCache
Review of 10337b:
* @hash = hashCode();@ and @public int hashCode() { return hash; }@ is not correct.
* there is ...
Alexandru Lungu
07:15 AM Bug #10337: Possible memory leak with FastFindCache
This actually is implemented for the explicit invalidation, but it needed to be added for the expiry event also.
I c...
Artur Școlnic
06:19 AM Bug #10337: Possible memory leak with FastFindCache
> You are right, this also caused the issue from note 43. After fixing this problem, the Nodes are kept at a reasonab... Alexandru Lungu
06:06 AM Bug #10337: Possible memory leak with FastFindCache
Alexandru Lungu wrote:
> * *Important:* I think @value.head@ is inconsistent after removal. If you remove a node, th...
Artur Școlnic
05:19 AM Bug #10337: Possible memory leak with FastFindCache
Alexandru, I think we have an issue with the Key objects retention.
I did a memory profiling and Keys are accumulati...
Artur Școlnic
05:15 AM Bug #10337: Possible memory leak with FastFindCache
* Please make @Node@ class static again.
* short-circuit @equals@ so that @this == o@ returns true directly.
* *Imp...
Alexandru Lungu
10:32 AM Bug #10385 (Review): Incorrect reset of the cursor cache in Reposition
Eduard Soltan
10:31 AM Bug #10385 (WIP): Incorrect reset of the cursor cache in Reposition
Committed on 10385a, rev. 16090. Eduard Soltan
10:20 AM Bug #10385: Incorrect reset of the cursor cache in Reposition
I have the following test case:... Eduard Soltan
09:59 AM Bug #10385 (Test): Incorrect reset of the cursor cache in Reposition
Eduard Soltan
06:45 AM Bug #10285: Static compound query returns no result
These should have covered the affected code.
I think the branch can be merged into trunk.
Ovidiu Maxiniuc
06:20 AM Bug #10285: Static compound query returns no result
Ovidiu, my testing plan is done. If you have anything else in mind, please let me know, otherwise, this can be added ... Andrei Plugaru
06:17 AM Bug #10285: Static compound query returns no result
Large gui app unittests passed ✅ Lorian Sandu
04:16 AM Bug #10285: Static compound query returns no result
Harness + reports passed ✅ Lorian Sandu
03:07 AM Bug #10285: Static compound query returns no result
Thnaks Ovidiu, for the review.
This is the testing plan I am currently running:
* unit tests + fwd tests of a large...
Andrei Plugaru
05:21 AM Bug #6923 (Pending): inner transaction block reverts too much
I integrated 6923a into 8388a as these changes alone are dependent upon record nursery proper rollbacking (which was ... Alexandru Lungu
01:42 AM Feature #9456: implement SQL Server dialect and helpers
Ovidiu Maxiniuc wrote:
>
> Please review. I think we need to redo the runtime regression tests again, just to be o...
Eduard Soltan

08/05/2025

03:18 PM Bug #6767: Possible name clashes in DMO classes
Can this task be merged? Vladimir Tsichevski
10:02 AM Feature #9456: implement SQL Server dialect and helpers
Changes applied. Pushed up to revision 16106 after rebase to latest trunk.
Please review. I think we need to redo ...
Ovidiu Maxiniuc
08:44 AM Feature #9456: implement SQL Server dialect and helpers
I am about to alter 9456b and address the following 5 occurrences of current @isLimitBeforeOffset()@:
* @FQLHelper.c...
Ovidiu Maxiniuc
08:29 AM Feature #9456: implement SQL Server dialect and helpers
Constantin Asofiei wrote:
> Alexandru, is this something which prevents 9456b to be merged to trunk? Does it affect ...
Alexandru Lungu
08:11 AM Feature #9456: implement SQL Server dialect and helpers
Alexandru, is this something which prevents 9456b to be merged to trunk? Does it affect other dialects than SQLServer?
Constantin Asofiei
08:02 AM Feature #9456: implement SQL Server dialect and helpers
I reviewed the changes and @toWhereExpendedNullExpression@ seems safe for all dialects. The things that drove the COA... Alexandru Lungu
06:58 AM Feature #9456: implement SQL Server dialect and helpers
Ah nevermind, is the one added at the beginning for @withNull@. Alexandru Lungu
06:57 AM Feature #9456: implement SQL Server dialect and helpers
Eduard, in @toWhereExpendedNullExpression@, isn't the last parenthesis unbalanced? You have @whereClause.append(" or ... Alexandru Lungu
09:45 AM Bug #10337: Possible memory leak with FastFindCache
Alexandru Lungu wrote:
> * If a node expires and it was the last node of the list, then the reverseCache should ev...
Artur Școlnic
08:24 AM Bug #10337: Possible memory leak with FastFindCache
Review of 10337b:
* add braces to the lambda inside @ReverseLookup@ c'tor
* Indent @lruCache@ javadoc (/** shouldn'...
Alexandru Lungu
07:18 AM Bug #10337: Possible memory leak with FastFindCache
I addressed the review in rev 16075. Artur Școlnic
05:02 AM Bug #10337: Possible memory leak with FastFindCache
Review of 10337b/16074:
* rewrite @reverseLookup.lruCache.get(new ReverseLookup.Node(l3Cache, k.k2));@ to @reverse...
Alexandru Lungu
07:49 AM Bug #10351: ProDataSet READ-XML issue when temp-table node is the same as dataset node
FWD (error message hidden by READ XML invoke, but is the same error as from 4GL):... Teodor Gorghe
07:29 AM Bug #10351: ProDataSet READ-XML issue when temp-table node is the same as dataset node
Constantin Asofiei wrote:
> OK, so if you have something like @foo/bar/@ in the XMl structure, and neither foo or ba...
Teodor Gorghe
07:10 AM Bug #10351: ProDataSet READ-XML issue when temp-table node is the same as dataset node
OK, so if you have something like @foo/bar/@ in the XMl structure, and neither foo or bar match the temp-table, then ... Constantin Asofiei
01:06 AM Bug #10351: ProDataSet READ-XML issue when temp-table node is the same as dataset node
Constantin Asofiei wrote:
> OK, what you found is if the root node does not match the dataset, and is a temp-table (...
Teodor Gorghe
07:13 AM Bug #10360: FOR loop WHERE condition evaluation issue
Success is true in this case because the @silentWorker@ catches the @ErrorConditionException@, thrown by deference op... Teodor Gorghe
07:07 AM Bug #10360: FOR loop WHERE condition evaluation issue
Hm... why is @success@ true in this case? Constantin Asofiei
04:22 AM Bug #10360 (Feedback): FOR loop WHERE condition evaluation issue
Ok. I have understood.
The @ErrorConditionException@ thrown by @deference@ operator is eaten by @silentWorker@, beca...
Teodor Gorghe
06:33 AM Bug #10374: Issues revealed while running testcases
These are some issues which I encountered while testing MSSQL dialect but found to affect others, as well. I did not ... Ovidiu Maxiniuc
06:08 AM Bug #10374 (New): Issues revealed while running testcases
Ovidiu Maxiniuc
05:52 AM Feature #6457: finish COPY-LOB support
Eduard Soltan wrote:
> > * @longchar.java@
> > ** why @"" + StringHelper.@ ?
>
> Because if value was @null@, a...
Constantin Asofiei

08/04/2025

02:35 PM Bug #10351: ProDataSet READ-XML issue when temp-table node is the same as dataset node
OK, what you found is if the root node does not match the dataset, and is a temp-table (serialized) name, then the ro... Constantin Asofiei
05:56 AM Bug #10351: ProDataSet READ-XML issue when temp-table node is the same as dataset node
Constantin Asofiei wrote:
> Teodor, is this related to #10203 ?
The testcase that Dennis wrote on #10203 is relat...
Teodor Gorghe
05:49 AM Bug #10351: ProDataSet READ-XML issue when temp-table node is the same as dataset node
Teodor, is this related to #10203 ? Constantin Asofiei
01:54 PM Bug #10360 (WIP): FOR loop WHERE condition evaluation issue
Teodor, the fix is not OK. The root cause is the @block-level on error undo, throw.@ clause in FWD and an additional... Constantin Asofiei
05:46 AM Bug #10360: FOR loop WHERE condition evaluation issue
On FWD, without the 10360a rev 16084 fix, the test cases always fails when the handle is invalid, including @FOR EACH... Teodor Gorghe
04:41 AM Bug #10360: FOR loop WHERE condition evaluation issue
IMHO, there are multiple issues here:
* if no records actually "hit" the faulty clause, no error is thrown.
** if t...
Alexandru Lungu
01:48 AM Bug #10360 (Review): FOR loop WHERE condition evaluation issue
Teodor Gorghe
01:47 AM Bug #10360 (WIP): FOR loop WHERE condition evaluation issue
Teodor Gorghe
01:47 AM Bug #10360: FOR loop WHERE condition evaluation issue
Constantin Asofiei wrote:
> For now, lets fix it so that FWD doesn't abend - I assume the resolver/lambda? for this ...
Teodor Gorghe
10:43 AM Feature #6457: finish COPY-LOB support
Constantin Asofiei wrote:
> Review for 6457a rev 16070:
> * @Stream.java@ - why the reason for the commented co...
Eduard Soltan
06:35 AM Feature #6457 (WIP): finish COPY-LOB support
Review for 6457a rev 16070:
* missing history entry or copyright year update: @block_properties.rules@, @copy_lob.ru...
Constantin Asofiei
10:41 AM Bug #10285 (Internal Test): Static compound query returns no result
Yes, I think you are right. Your reasoning seems sound to me.
Let's get this into tests with the other testsets. Ple...
Ovidiu Maxiniuc
09:37 AM Bug #10285 (Review): Static compound query returns no result
*I have committed @10285a/16085@.* My changes make that FORWARD-ONLY result sets are created only if this entire cond... Andrei Plugaru
07:08 AM Bug #10285 (WIP): Static compound query returns no result
I think I understand the root cause of the issue.
In FWD, we already have a wrapper for the forward only result se...
Andrei Plugaru
08:16 AM Feature #9456: implement SQL Server dialect and helpers
Alexandru Lungu wrote:
> I am OK then with the changes to RAQ to distinguish between dirty and primary parameters....
Eduard Soltan
07:50 AM Feature #9456: implement SQL Server dialect and helpers
> Not only for that, there are cases when user defined where clause might be different in SqlServer dialect and H2 bu... Alexandru Lungu
05:55 AM Feature #9456: implement SQL Server dialect and helpers
Alexandru Lungu wrote:
> Review of 9456b:
> * I see plenty of @isLimitBeforeOffset@ checks that alter the behavior ...
Eduard Soltan
05:37 AM Feature #9456: implement SQL Server dialect and helpers
Alexandru Lungu wrote:
> Is @toWhereExpendeNullExpression@ a AND / OR based null check vs @toWhereExpression@ that...
Eduard Soltan
05:14 AM Feature #9456: implement SQL Server dialect and helpers
Review of 9456b:
* I see plenty of @isLimitBeforeOffset@ checks that alter the behavior of persistence code. Sometim...
Alexandru Lungu
04:52 AM Bug #10337 (Review): Possible memory leak with FastFindCache
I implemented the idea from #10337-19 (with a few changes) in 10337b/16074.
Alexandru, please review.
Artur Școlnic

08/01/2025

02:30 PM Bug #10360: FOR loop WHERE condition evaluation issue
Constantin Asofiei wrote:
> Ovidiu: do you recall some example where we emit a client-side WHERE in FWD, in conversi...
Ovidiu Maxiniuc
08:03 AM Bug #10360: FOR loop WHERE condition evaluation issue
For now, lets fix it so that FWD doesn't abend - I assume the resolver/lambda? for this argument is not properly exec... Constantin Asofiei
07:54 AM Bug #10360: FOR loop WHERE condition evaluation issue
I have updated the Test code from the #10360-2.
{{Collapse(Logs)...
Teodor Gorghe
07:39 AM Bug #10360: FOR loop WHERE condition evaluation issue
Teodor, please also add a test where @hdl::f3@ is a valid field and @hdl@ is a valid handle. Constantin Asofiei
07:26 AM Bug #10360: FOR loop WHERE condition evaluation issue
This one is weird, not in terms that it fails, but how 4GL behaves. In FWD, we evaluate all arguments before executi... Constantin Asofiei
07:02 AM Bug #10360: FOR loop WHERE condition evaluation issue
We have the following test case: {{Collapse(CODE)... Teodor Gorghe
06:53 AM Bug #10360 (Test): FOR loop WHERE condition evaluation issue
Teodor Gorghe
01:03 PM Feature #9456: implement SQL Server dialect and helpers
OK, I will remove the outer @if@. Ovidiu Maxiniuc
01:00 PM Feature #9456: implement SQL Server dialect and helpers
Constantin Asofiei wrote:
> * the @releaseSavepoint@ part - for non-local dbs, that should also check via JDBC for t...
Constantin Asofiei
12:43 PM Feature #9456: implement SQL Server dialect and helpers
Ovidiu, some notes:
* the @"FirstNumber".equals(firstColumnLabel)@ approach (appears twice now in the code) I think ...
Constantin Asofiei
12:33 PM Feature #9456: implement SQL Server dialect and helpers
I did the best effort to detect the dialect in @Session@ in order to avoid the NPE regression reported in #7143-1634 ... Ovidiu Maxiniuc
09:25 AM Feature #9456: implement SQL Server dialect and helpers
Alexandru, please review the @p2j.persist@ changes. Constantin Asofiei
07:13 AM Feature #9456: implement SQL Server dialect and helpers
Ovidiu, 9456b/16097 looks good (I've committed some formatting fixes).
Please commit the dialect NPE fix from #714...
Constantin Asofiei
07:37 AM Bug #6923: inner transaction block reverts too much
Alexandru Lungu wrote:
> > Thanks, then I have no other concerns for 6923a_h2 . The changes are additive and can be ...
Constantin Asofiei
07:19 AM Bug #6923: inner transaction block reverts too much
> Thanks, then I have no other concerns for 6923a_h2 . The changes are additive and can be merged to fwd-h2 trunk (an... Alexandru Lungu
06:59 AM Bug #6923: inner transaction block reverts too much
Thanks, then I have no other concerns for 6923a_h2 . The changes are additive and can be merged to fwd-h2 trunk (and... Constantin Asofiei
06:57 AM Bug #6923: inner transaction block reverts too much
> What happens at this step in FWD, when the sub-tx is rollbacked? I assume the record is removed completely from the... Alexandru Lungu
06:52 AM Bug #6923: inner transaction block reverts too much
Constantin Asofiei wrote:
> Also, you are missing assigning the multiplex ID to the row, @reclaimPrimaryKey@.
But w...
Constantin Asofiei
06:36 AM Bug #6923: inner transaction block reverts too much
Also, in other words, after the sub-tx was rolled back: the newly created record still survives, and needs its PK to ... Constantin Asofiei
06:34 AM Bug #6923: inner transaction block reverts too much
Alexandru Lungu wrote:
> * record is created (claiming a new key)
OK, so this adds the record to the multiplex inde...
Constantin Asofiei
06:22 AM Bug #6923: inner transaction block reverts too much
> I think if a row is added to the scan index, then all indexes need to see this row.
My code is mostly like @getN...
Alexandru Lungu
06:20 AM Bug #6923: inner transaction block reverts too much
> Alexandru, how is reclaimPrimaryKey supposed to be used?
I can agree that my implementation was quite aggresive....
Alexandru Lungu
06:10 AM Bug #6923: inner transaction block reverts too much
Alexandru, how is @reclaimPrimaryKey@ supposed to be used?
With 6923a_h2/60, we leave the table indexes in an inco...
Constantin Asofiei
05:43 AM Bug #6923: inner transaction block reverts too much
Constantin, just a reminder. Please review 6923a_h2/60. I want to merge it to FWD_H2 trunk and eventually make a rele... Alexandru Lungu
06:06 AM Bug #10337: Possible memory leak with FastFindCache
... Alexandru Lungu
06:00 AM Bug #10337: Possible memory leak with FastFindCache
Although, invalidation of the L3 caches on revereseLookup/LRUList expiry would be a nightmare. We would need to keep ... Artur Școlnic
05:54 AM Bug #10337: Possible memory leak with FastFindCache
How about... Artur Școlnic
05:52 AM Bug #10337: Possible memory leak with FastFindCache
> Map<RecordIdentifier<String>, LRUList<L2Key>> reverseLookup = new WeakHashMap<>();
Considering the L3 cache for ...
Alexandru Lungu
05:50 AM Bug #10337: Possible memory leak with FastFindCache
Well, I guess a map with weak references as keys is a WeakHashMap :) Artur Școlnic
05:49 AM Bug #10337: Possible memory leak with FastFindCache
Alexandru Lungu wrote:
> But I want to express my concern of the fact that we are *still* allowing the reverse-look-...
Artur Școlnic
05:35 AM Bug #10337: Possible memory leak with FastFindCache
> I think that if we make the reverseLookup a LRU cache with weak referenced keys, we can unbound the L3 cache.
Te...
Alexandru Lungu
03:52 AM Feature #6457 (Review): finish COPY-LOB support
I'll review the first pass and we'll work on the codepage problems in a second branch. Constantin Asofiei
01:28 AM Bug #10351: ProDataSet READ-XML issue when temp-table node is the same as dataset node
Committed revision *16081* on task branch *10351a*:
- Added some @isRoot = false@ before break because the next stre...
Teodor Gorghe

07/31/2025

12:35 PM Bug #10337: Possible memory leak with FastFindCache
Artur Școlnic wrote:
> Alternatively, we can disregard the ReveresLookup class in favor of a more light weight solut...
Artur Școlnic
12:02 PM Bug #10337: Possible memory leak with FastFindCache
Alternatively, we can disregard the ReveresLookup class in favor of a more light weight solution:... Artur Școlnic
10:47 AM Bug #10337: Possible memory leak with FastFindCache
Alexandru, what if we introduce a new type of LRU that has weak references as keys? This will take care of the situat... Artur Școlnic
06:25 AM Bug #10337 (WIP): Possible memory leak with FastFindCache
Artur, please reassess #10337-14 issue and #10337-19 idea. ReverseLookup collections are a 2D caches. Introducing a L... Alexandru Lungu
10:10 AM Feature #10325 (Review): Optimize AdaptiveQuery for single-result scenarios
I have committed @10325a/16076@. This revision contains mostly cosmetic changes.
I have run the performance test sui...
Andrei Plugaru
09:17 AM Bug #10351 (Review): ProDataSet READ-XML issue when temp-table node is the same as dataset node
Committed revision *16080* on task branch *10351a*:
- @DATASET:READ-XML@ added support for buffer as root node.
T...
Teodor Gorghe
04:44 AM Bug #10351 (WIP): ProDataSet READ-XML issue when temp-table node is the same as dataset node
Created task branch *10351a*. Teodor Gorghe
04:22 AM Bug #10351: ProDataSet READ-XML issue when temp-table node is the same as dataset node
On OE 4GL, you can define XML input files, for static and dynamic datasets, with a structure like this:... Teodor Gorghe
04:16 AM Bug #10351 (Test): ProDataSet READ-XML issue when temp-table node is the same as dataset node
Teodor Gorghe

07/30/2025

03:10 PM Bug #10337 (Review): Possible memory leak with FastFindCache
Alexandru Lungu wrote:
>
> However, in the heap dump I analyzed, @emptyRecordsCache@ was (surprisingly) mostly emp...
Artur Școlnic
07:07 AM Bug #10337: Possible memory leak with FastFindCache
> I think that the memory leak in 9802f was caused mainly by the absence of a designated ExpiryListener for the empty... Alexandru Lungu
06:46 AM Bug #10337: Possible memory leak with FastFindCache
I think that the memory leak in 9802f was caused mainly by the absence of a designated @ExpiryListener@ for the @empt... Artur Școlnic
03:44 AM Bug #10337: Possible memory leak with FastFindCache
In fact, I think there is a small caveat. We still need a @touch@ mechanism so that the LRU cache will mark the @Node... Alexandru Lungu
03:31 AM Bug #10337 (WIP): Possible memory leak with FastFindCache
Alexandru Lungu
03:31 AM Bug #10337: Possible memory leak with FastFindCache
Review of 10337b:... Alexandru Lungu

07/29/2025

01:17 PM Feature #9456: implement SQL Server dialect and helpers
Committed on 9456b, rev. 16081.
Reverted boolean conversion for dirty database, separated parameters for FQL query...
Eduard Soltan
10:18 AM Feature #9456: implement SQL Server dialect and helpers
Ovidiu Maxiniuc wrote:
> But that is not always the case. There are cases when an UDF (in H2 that is a method from...
Eduard Soltan
09:40 AM Feature #9456: implement SQL Server dialect and helpers
Yes, that is only a particular case of transformation. Also, many of the transformations, although more complicated (... Ovidiu Maxiniuc
09:29 AM Feature #9456: implement SQL Server dialect and helpers
Ovidiu Maxiniuc wrote:
> This is most likely incorrect: if the primary is MSSQL, this will cause the booleans to b...
Eduard Soltan
09:19 AM Feature #9456: implement SQL Server dialect and helpers
Eduard Soltan wrote:
> Committed on 9456b, rev. 16076.
> Convert booleans for dirty database in case primary databa...
Ovidiu Maxiniuc
06:53 AM Feature #9456: implement SQL Server dialect and helpers
Committed on 9456b, rev. 16077. AddInterval and GetInterval function fix-ups Eduard Soltan
04:10 AM Feature #9456: implement SQL Server dialect and helpers
Committed on 9456b, rev. 16076.
Convert booleans for dirty database in case primary database does not support bool...
Eduard Soltan
03:25 AM Feature #9456: implement SQL Server dialect and helpers
*Eduard* - there are usages of 'lower' in @udf/sqlserver/udfs.sql@ where it matches with an uppercase text, see:
<pr...
Constantin Asofiei
10:50 AM Feature #10325 (WIP): Optimize AdaptiveQuery for single-result scenarios
I have continued implementation for this task.
For the issue spotted in the last part of #10325-4, I have stopped f...
Andrei Plugaru
09:32 AM Bug #10026: A multi-table AdaptiveQuery running off-end is still updating the cursor
I made some more experiments related with Scrolling/Non-Scrolling Queries.
For this testcase: {{Collapse(Scrolling &...
Stefanel Pezamosca
06:02 AM Bug #10337: Possible memory leak with FastFindCache
Artur, please archive branches after you merge them - 10337a is still 'active'.
Constantin Asofiei

07/28/2025

11:31 AM Feature #10094: RECIDs from different tenants of same logical database should not overlap
The erroneous output of the _seqno to log files fixed against this RedMine and reported against https://proj.goldenco... Brian Woodard
11:30 AM Feature #6457: finish COPY-LOB support
I am not really sure how the conversion happens in UTF-8 character to ISO-8859-1 in 4GL.
h3. Test 1
-Cpinternal...
Eduard Soltan
02:46 AM Feature #6457: finish COPY-LOB support
Committed on 6457a, rev. 16069.
- Added NO-CONVERT conversion support + plus error handling. From the docs:...
Eduard Soltan
04:32 AM Bug #10171 (Internal Test): Word Index/CONTAINS support for MS SQL Server.
I tested 9456a with a few standalone testcases I made with CONTAINS and they were ok. 9456a was already merged to tru... Stefanel Pezamosca

07/26/2025

08:15 AM Bug #10337 (Review): Possible memory leak with FastFindCache
I overhauled the ReverseLookup and brought back the changes from 9802f, tested the code and it is as fast as 9802f, I... Artur Școlnic
 

Also available in: Atom