Project

General

Profile

Activity

From 02/12/2025 to 03/13/2025

03/13/2025

06:51 PM Bug #9756 (Internal Test): Performance improvements for CONTAINS udf related methods.
O am OK with the changes in r15769. Ovidiu Maxiniuc
08:09 AM Bug #9756 (Review): Performance improvements for CONTAINS udf related methods.
I made some other minor changes in revision 15769. Stefanel Pezamosca
03:44 PM Bug #9763: xml-node-name buffer option
Constantin Asofiei wrote:
> Ovidiu, you are right. Eduard: for now, please rename @setLabel@ and @getLabel@ to @lab...
Ovidiu Maxiniuc
02:21 PM Bug #9763: xml-node-name buffer option
Ovidiu, you are right. Eduard: for now, please rename @setLabel@ and @getLabel@ to @label@; this way we don't introd... Constantin Asofiei
02:09 PM Bug #9763: xml-node-name buffer option
I looked at 9763a.
* @buffer_definitions.rules@:
** contains some hard tabs (@#09@, @\t@)
** rules should use t...
Ovidiu Maxiniuc
01:54 PM Bug #9763: xml-node-name buffer option
Constantin Asofiei wrote:
> I assume you mean 9763b.
Yes, you are right. Sorry, I did not realise that there are 2 ...
Ovidiu Maxiniuc
01:52 PM Bug #9763: xml-node-name buffer option
Ovidiu Maxiniuc wrote:
> I looked at 9763a and I do NOT agree with the implementation.
I assume you mean 9763b.
Constantin Asofiei
01:51 PM Bug #9763: xml-node-name buffer option
I looked at 9763a and I do NOT agree with the implementation.
IMHO, the values of these new attributes should be s...
Ovidiu Maxiniuc
01:25 PM Bug #9763 (Internal Test): xml-node-name buffer option
Please do some minimal tests with 9763a to get this into trunk. Constantin Asofiei
06:34 AM Bug #9763: xml-node-name buffer option
Constantin Asofiei wrote:
>
> Test also with @buffer tt1:write-xml@ and @buffer tt1:xml-node-name = "something".@....
Eduard Soltan
04:36 AM Bug #9763: xml-node-name buffer option
Eduard Soltan wrote:
> Added runtime support for buffer attributes, on 9763b, rev. *15771*.
>
> @buffer btt1:writ...
Constantin Asofiei
04:34 AM Bug #9763: xml-node-name buffer option
Added runtime support for buffer attributes, on 9763b, rev. *15771*.
@buffer btt1:write-xml("longchar", lc).@
@...
Eduard Soltan
01:31 PM Feature #9543: implement missing BUFFER attributes
Ovidiu Maxiniuc wrote:
> Constantin, shouldn't we generate the optimised @logical.TRUE@ instead when a literal is us...
Constantin Asofiei
12:10 PM Feature #9543: implement missing BUFFER attributes
There is another conversion issue. Instead of... Ovidiu Maxiniuc
11:15 AM Feature #9543: implement missing BUFFER attributes
Ovidiu Maxiniuc wrote:
> I do not think you need to add a new method.
> The _missing_ method is most likely @Common...
Eduard Soltan
10:56 AM Feature #9543: implement missing BUFFER attributes
I do not think you need to add a new method.
The _missing_ method is most likely @CommonHandle.readOnlyError(String ...
Ovidiu Maxiniuc
09:29 AM Feature #9543: implement missing BUFFER attributes

> Constantin Asofiei wrote:
> * did you test how the setter converts for @CAN-READ@?
>
>> Well, is converts in...
Eduard Soltan
08:49 AM Feature #9543: implement missing BUFFER attributes
Addressed review issues in rev. *15773*.
Constantin Asofiei wrote:
> * did you test how the setter converts for @...
Eduard Soltan
08:17 AM Feature #9543: implement missing BUFFER attributes
Review of @9543a, revision 15771:
* why the @AutoSynchronize@ interface? If the attribute is specific only to BUFFER...
Constantin Asofiei

03/12/2025

06:34 PM Feature #7020: always use "expanded" extent fields
I have started reviewing the branch, but it will not be ready until tomorrow due to its size. Ovidiu Maxiniuc
11:37 AM Feature #7020 (Review): always use "expanded" extent fields
Done. 7020c was rebased to trunk revision 15770. 7020c is at revision 15792 and is ready for review. Stefanel Pezamosca
09:43 AM Feature #7020 (WIP): always use "expanded" extent fields
Greg Shah wrote:
> Stefanel: Is there anything else that needs to get done on this task?
As I extracted some of t...
Stefanel Pezamosca
09:33 AM Feature #7020: always use "expanded" extent fields
Eric/Ovidiu: Please make it a priority to get this code review done. We have several bugs being held open due to thi... Greg Shah
11:16 AM Bug #9683: CompoundQuery is doing extra hydration attempts
Review of 9683a:
There is still a place:...
Alexandru Lungu
10:07 AM Feature #9543 (WIP): implement missing BUFFER attributes
Eduard Soltan
10:03 AM Feature #9543: implement missing BUFFER attributes
Added conversion support on 9543a, revision *15770*.
For @AUTO-SYNCHRONIZE@ can be setable and queryable, although...
Eduard Soltan
07:11 AM Feature #9543: implement missing BUFFER attributes
Eduard, please add conversion support for these two. Constantin Asofiei
08:56 AM Bug #9756: Performance improvements for CONTAINS udf related methods.
I fixed this in 9756a revision 15769.
Other tests passed. If there are no other objections I think 9756a is safe f...
Stefanel Pezamosca
08:09 AM Bug #9756: Performance improvements for CONTAINS udf related methods.
Oh, I discovered an issue that is also in trunk. One example of problematic statement @contains(words, -)@ I will fix... Stefanel Pezamosca
07:57 AM Bug #9756 (Internal Test): Performance improvements for CONTAINS udf related methods.
I will continue testing the functionality with different parameters for contains. Stefanel Pezamosca
07:40 AM Bug #9756: Performance improvements for CONTAINS udf related methods.
Ovidiu Maxiniuc wrote:
> Cool. I have looked at the code. The changes are minimal. They are OK in my opinion. Howeve...
Stefanel Pezamosca
06:42 AM Bug #9756: Performance improvements for CONTAINS udf related methods.
Cool. I have looked at the code. The changes are minimal. They are OK in my opinion. However, we can assume the first... Ovidiu Maxiniuc
05:16 AM Bug #9756: Performance improvements for CONTAINS udf related methods.
I changed boolean[] to BitSet and used ConcurrentHashMap for skipPatterns in 9756a revision 15767. Stefanel Pezamosca
08:32 AM Bug #7924 (Test): add support for creating an empty database
The effort was moved to #7894 task and completed.
Branch 7894a was merged into trunk as rev. 15770 and archived.
...
Dănuț Filimon
06:33 AM Bug #9763: xml-node-name buffer option
9763a rev 15771 changes @return new character("label")@ to @return character.UNKNOWN@.
I'll move ahead with the co...
Constantin Asofiei
06:20 AM Bug #9763: xml-node-name buffer option
Constantin Asofiei wrote:
> As @LABEL@ is *not an attribute* for BUFFER or TEMP-TABLE (you can't set or get it via @...
Eduard Soltan
05:58 AM Bug #9763: xml-node-name buffer option
Constantin Asofiei wrote:
> Please post the test and how it converts now.
The 4gl test:...
Eduard Soltan
05:55 AM Bug #9763: xml-node-name buffer option
As @LABEL@ is *not an attribute* for BUFFER or TEMP-TABLE (you can't set or get it via @h:LABEL@), then please do not... Constantin Asofiei
05:53 AM Bug #9763: xml-node-name buffer option
Please post the test and how it converts now. Constantin Asofiei
05:36 AM Bug #9763: xml-node-name buffer option
Committed on 9765a, rev. *15768*. Conversion support for NAMESPACE-URI, NAMESPACE-PREFIX, SERIALIZE-NAME and LABEL bu... Eduard Soltan
04:44 AM Bug #9763 (WIP): xml-node-name buffer option
Eduard Soltan wrote:
> However the following syntax in OE will not raise any errors @def temp-table tt1 field f1 as ...
Constantin Asofiei
04:34 AM Bug #9763: xml-node-name buffer option
Eduard Soltan wrote:
> Constantin Asofiei wrote:
> > Is this LABEL only for buffers, or temp-table, too? Is it acc...
Eduard Soltan
04:28 AM Bug #9763: xml-node-name buffer option
Constantin Asofiei wrote:
> Is this LABEL only for buffers, or temp-table, too? Is it accessible via @BUFFER btt1:L...
Eduard Soltan
04:23 AM Bug #9763: xml-node-name buffer option
Is this LABEL only for buffers, or temp-table, too? Is it accessible via @BUFFER btt1:LABEL = "something"@? Constantin Asofiei
04:15 AM Bug #9763: xml-node-name buffer option
Constantin Asofiei wrote:
> Eduard, so I found @SERIALIZE-NAME@ also at the @DEF BUFFER@ statement. Please work on ...
Eduard Soltan
03:32 AM Bug #9763: xml-node-name buffer option
Eduard, so I found @SERIALIZE-NAME@ also at the @DEF BUFFER@ statement. Please work on adding all these. I don't kn... Constantin Asofiei

03/11/2025

02:16 PM Bug #9763: xml-node-name buffer option
Constantin Asofiei wrote:
> > 9763a/15767 only adds conversion support for buffer's @xml-node-name@ attribute. But t...
Ovidiu Maxiniuc
12:55 PM Bug #9763: xml-node-name buffer option
I don't see any @label@ support in @BufferImpl@, so we may want to defer that.
Otherwise, please create a more com...
Constantin Asofiei
12:31 PM Bug #9763: xml-node-name buffer option
Constantin Asofiei wrote:

> Eduard: please do some small tests and see if conversion of these works properly.
...
Eduard Soltan
11:48 AM Bug #9763 (New): xml-node-name buffer option
Ovidiu Maxiniuc wrote:
> Constantin Asofiei wrote:
> > Ovidiu: please review 9763a
>
> 9763a/15767 only adds con...
Constantin Asofiei
11:24 AM Bug #9763: xml-node-name buffer option
Constantin Asofiei wrote:
> Ovidiu: please review 9763a
9763a/15767 only adds conversion support for buffer's @xm...
Ovidiu Maxiniuc
10:00 AM Bug #9763 (Review): xml-node-name buffer option
A buffer can set its own @XML-NODE-NAME@ - and multiple buffers (for the same temp-table) can have different @XML-NOD... Constantin Asofiei
09:51 AM Bug #9763 (Test): xml-node-name buffer option
Constantin Asofiei
11:08 AM Bug #9756: Performance improvements for CONTAINS udf related methods.
Stefanel Pezamosca wrote:
> The cache I made only saves the ast given by FQLParser, and has only the String fql as a...
Ovidiu Maxiniuc
10:43 AM Bug #9756: Performance improvements for CONTAINS udf related methods.
Ovidiu Maxiniuc wrote:
> * related to the new, rather large, boolean arrays in @Contains@ and @LogicalExpressionConv...
Stefanel Pezamosca
10:37 AM Bug #9756: Performance improvements for CONTAINS udf related methods.
Ovidiu Maxiniuc wrote:
> * also in @FqlToSqlConverter.fqlAstCache@, I think there are 90% cases when the AST tree do...
Stefanel Pezamosca
10:29 AM Bug #9756: Performance improvements for CONTAINS udf related methods.
Ovidiu Maxiniuc wrote:
> Review of 9756a/15766.
>
> I agree that these are two directions we can improve performa...
Stefanel Pezamosca
10:28 AM Bug #9756: Performance improvements for CONTAINS udf related methods.
Review of 9756a/15766.
I agree that these are two directions we can improve performance. The ideas are good. But I...
Ovidiu Maxiniuc
06:23 AM Bug #9756 (Review): Performance improvements for CONTAINS udf related methods.
Please review! Stefanel Pezamosca
06:22 AM Bug #9756 (WIP): Performance improvements for CONTAINS udf related methods.
Working at #7020 I also made some performance improvements for CONTAINS udf related methods. LogicalExpressionConvert... Stefanel Pezamosca
03:07 AM Bug #9756 (Test): Performance improvements for CONTAINS udf related methods.
Stefanel Pezamosca
10:41 AM Bug #9764: Some events (like VALUE-CHANGED) are invoked after errors are displayed for the buffer...
Given a browse with a set query. This query can have one ore more buffers set. One of the buffers (say buff1) contain... Delia Mitric
10:37 AM Bug #9764 (New): Some events (like VALUE-CHANGED) are invoked after errors are displayed for the ...
Delia Mitric
04:35 AM Bug #9755: Reimplement AdaptiveQuery dynamic-mode using a LookAheadResults delegate
Alexandru Lungu wrote:
> ...
> There is no point in "revalidating" if a @LookAheadQuery@ delegate for dynamic-mode ...
Dănuț Filimon

03/10/2025

02:33 PM Feature #9093: add protection for multi-tenant imports to optionally only import tables that are ...
I downloaded the files from your link. Thank you.
As you said, there are 2 directories:
* the @emptydbwithschema@...
Ovidiu Maxiniuc
11:57 AM Feature #9093: add protection for multi-tenant imports to optionally only import tables that are ...
I've prepared 4 empty database bzip2 backups and the current metadata split into the two separate directories as we c... Brian Woodard
10:12 AM Bug #9755: Reimplement AdaptiveQuery dynamic-mode using a LookAheadResults delegate
I did some prototyping, but I must admit that having it as a @Query@ is much too complex comparing to having it as a ... Alexandru Lungu
07:15 AM Bug #9755: Reimplement AdaptiveQuery dynamic-mode using a LookAheadResults delegate
h4. Problem
A pattern was detected in a customer application that uses a browsed query, which is automatically scr...
Alexandru Lungu
06:51 AM Bug #9755 (New): Reimplement AdaptiveQuery dynamic-mode using a LookAheadResults delegate
Alexandru Lungu
04:42 AM Bug #9633: bulk delete for permanent tables
Branch 9656a was merged to trunk rev 15762 and archived. Constantin Asofiei
03:37 AM Bug #9633: bulk delete for permanent tables
Ovidiu Maxiniuc wrote:
> Review of 9656a/15759.
Done, please see rev 15760.
Constantin Asofiei

03/07/2025

04:18 PM Bug #9633: bulk delete for permanent tables
Review of 9656a/15759.
* @Persistence.java@
** I think the new methods are very useful additions;
** line 1370: ...
Ovidiu Maxiniuc
08:04 AM Bug #9633: bulk delete for permanent tables
Ovidiu, can you review 9656a, please? I'd like to get this into trunk. Constantin Asofiei
03:46 AM Feature #7020: always use "expanded" extent fields
*7020c* was rebased to trunk *15761* and is now at revision *15786*. Stefanel Pezamosca

03/05/2025

08:09 AM Feature #9093: add protection for multi-tenant imports to optionally only import tables that are ...
Eric Faulhaber wrote:
> Can you proceed with testing the simple MT setup you were using before the customer's test c...
Ovidiu Maxiniuc
08:02 AM Feature #9093: add protection for multi-tenant imports to optionally only import tables that are ...
Ovidiu Maxiniuc wrote:
> The regression tests returned with success, as well as my targetted testcases used for deve...
Eric Faulhaber
05:39 AM Bug #9633: bulk delete for permanent tables
Constantin Asofiei wrote:
> The @invalidateCache@ may be used for the future bulk-delete for permanent tables, too (...
Constantin Asofiei
05:34 AM Bug #9633: bulk delete for permanent tables
The state-changed 'buffer refresh' event was added to 9656a/15759 (after rebase).
I've tested how 4GL behaves if t...
Constantin Asofiei

03/04/2025

05:19 AM Bug #9633: bulk delete for permanent tables
> The concern is only for buffers in the same session. I plan to add an API to post an event, intercepted via 'stateC... Alexandru Lungu
05:17 AM Bug #9633: bulk delete for permanent tables
Alexandru Lungu wrote:
> * Having an exception should attempt to unlock the records?
The point is for the outer blo...
Constantin Asofiei
04:44 AM Bug #9633: bulk delete for permanent tables
Review of 9656a:
> added Persistence.invalidateCache, as a central API to force cache invalidation. This allows sp...
Alexandru Lungu
03:16 AM Bug #9633: bulk delete for permanent tables
Starting to look into the changes ... Alexandru Lungu
04:03 AM Feature #6720: lazy hydration
> However, I think we have the JDBC to create the old buffer directly, at the moment the trigger is called instead of... Alexandru Lungu
02:07 AM Feature #7020: always use "expanded" extent fields
*7020c* was rebased to trunk *15752* and is now at revision *15777*. Last 5 revisions have some performance improveme... Stefanel Pezamosca

03/03/2025

04:30 PM Feature #6720: lazy hydration
Greg Shah wrote:
> I understand. I presume it is scoped to the trigger. It is implicitly nested inside the convert...
Ovidiu Maxiniuc
03:29 PM Feature #6720: lazy hydration
> The 'old' buffer is not a normal buffer. The @snapshot@ of a record is created at the time it is changed (only if a... Greg Shah
11:49 AM Feature #6720: lazy hydration
The 'old' buffer is not a normal buffer. The @snapshot@ of a record is created at the time it is changed (only if a t... Ovidiu Maxiniuc
01:38 PM Bug #9633 (Review): bulk delete for permanent tables
I'm placing 9656a in review to get some info from Alexandru/Ovidiu.
One note about my previous concern:
* buffers...
Constantin Asofiei
06:57 AM Bug #9633: bulk delete for permanent tables
Created task branch 9656a from trunk rev 15750. The changes are in 15751:
* added @Persistence.invalidateCache@, as...
Constantin Asofiei
11:48 AM Feature #9093: add protection for multi-tenant imports to optionally only import tables that are ...
The regression tests returned with success, as well as my targetted testcases used for development. But these no not ... Ovidiu Maxiniuc
08:53 AM Bug #9683: CompoundQuery is doing extra hydration attempts
I committed rev 15726. It contains a new interface and a few implementing classes. Artur Școlnic
07:07 AM Bug #9701 (Test): RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality c...
I have now also ported the changes to @7156c/15546@ and @7156e/15734@. Andrei Plugaru
06:44 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
Andrei Plugaru wrote:
> I have merged to trunk as rev 15750.
>
> *Danut, should I also port it to 7156c and 7156e...
Dănuț Filimon
06:40 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
I have merged to trunk as rev 15750.
*Danut, should I also port it to 7156c and 7156e?*
Andrei Plugaru
04:06 AM Bug #9701 (Merge Pending): RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO e...
Please merge 9701a to trunk now. Alexandru Lungu
02:37 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
All the testing showed no regressions. ✅
I think this can be queued in for merge.
Andrei Plugaru
05:33 AM Bug #8868 (Rejected): Fix "Can't normalize FWD value to use it with direct access." error for Fie...
This fix made it into trunk as rev 15687, it was part of #9587. I am dead archiving 8868a and rejecting this issue. Dănuț Filimon
04:30 AM Bug #9717: Investigate the possibility to replace UNIQUE INDEX with NON-UNIQUE INDEX and UNIQUE C...
Incipient research shows that @UNIQUE CONSTRAINT@ is mostly a sugar syntax for an UNIQUE INDEX. The point is that @UN... Alexandru Lungu

02/28/2025

09:05 AM Feature #9711: collation configuration cleanup
Greg Shah wrote:
> > I agree that it is best to have the collation for all these databases in sync to the degree po...
Eric Faulhaber
08:38 AM Bug #9717: Investigate the possibility to replace UNIQUE INDEX with NON-UNIQUE INDEX and UNIQUE C...
The legacy UNIQUE INDEX transforms into UNIQUE INDEX in SQL. Recently, we discovered that queries over UNIQUE INDEXes... Alexandru Lungu
08:31 AM Bug #9717 (New): Investigate the possibility to replace UNIQUE INDEX with NON-UNIQUE INDEX and UN...
Alexandru Lungu
05:57 AM Feature #7020: always use "expanded" extent fields
*7020c* was rebased to trunk *15747* and is now at revision *15771*. Stefanel Pezamosca
05:57 AM Bug #9683: CompoundQuery is doing extra hydration attempts
9683a seems to be on the right track.
At this is in an early stage, I may say that it has quite a high cognitive c...
Alexandru Lungu
04:48 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
As the proposed changes are not really related to this task, I created a new one - #9714, which will address the remo... Andrei Plugaru
04:46 AM Bug #9714: Remove LocalSyncher as it has become dead code
From Eric in #9701-24:
> Please note that LocalSyncher is effectively dead code. We really should remove its use. It...
Andrei Plugaru
04:45 AM Bug #9714 (New): Remove LocalSyncher as it has become dead code
Andrei Plugaru
02:18 AM Bug #9713: Remove singleBuffer from FQLPreprocessor constructor call
This task was created based on #9695-27.
The main drive for this task is that The @private FQLPreprocessor(List<Re...
Dănuț Filimon
02:11 AM Bug #9713 (New): Remove singleBuffer from FQLPreprocessor constructor call
Dănuț Filimon

02/27/2025

04:27 PM Feature #9711: collation configuration cleanup
> I agree that it is best to have the collation for all these databases in sync to the degree possible, and if we ha... Greg Shah
04:16 PM Feature #9711: collation configuration cleanup
Greg Shah wrote:
> For persistent databases, we need the collation used for the primary database to be consistent wi...
Eric Faulhaber
11:33 AM Feature #9711: collation configuration cleanup
For the @_temp@ database, please see my comments in #9699-15 through #9699-21. We should eliminate all hard coded cf... Greg Shah
11:30 AM Feature #9711: collation configuration cleanup
This is meant to finish the work left open in #5491-20:
We need to simplify the configuration of the locale/collat...
Greg Shah
11:30 AM Feature #9711 (WIP): collation configuration cleanup
Greg Shah
03:39 PM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
Eric Faulhaber wrote:
> Please note that @LocalSyncher@ is effectively dead code. We really should remove its use. I...
Andrei Plugaru
10:00 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
Andrei Plugaru wrote:
> Alexandru Lungu wrote:
> > * Please investigate if there are @equals@ comparisons of @BaseR...
Eric Faulhaber
09:53 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
I think that should suffice. The changes are right at the heart of the persistence and surely the affected code will ... Ovidiu Maxiniuc
09:44 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
Thanks, Ovidiu, for the review.
As we want to test it more aggressively, I propose the following tests, apart from...
Andrei Plugaru
09:32 AM Bug #9701 (Internal Test): RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO e...
I have reviewed the changes in 9701a/r15735.
I agree with the new code (with the reservation of the problem related ...
Ovidiu Maxiniuc
08:09 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
I have ran the fwd tests and they show no regressions. Andrei Plugaru
07:28 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
The unit tests of a customer passed, however I have one more failing test in the fwd tests. So, I am running the fwd ... Andrei Plugaru
04:44 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
I will be following this test plan:
* unit tests for a large customer application [ai]
* fwd tests of another large...
Andrei Plugaru
04:37 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
Andrei, please do other remaining testing until Ovidiu provides a final Review (unit tests or/and ChUi regression tes... Alexandru Lungu
03:31 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
*Ovidiu*, please take a look over the changes in @9701a@ when you are available. Andrei Plugaru
11:40 AM Feature #9712: ensure that the language and encoding options in use across the current customer b...
As found in #9699, some customers may be setup with invalid combinations of language and codepage. We need a list of... Greg Shah
11:37 AM Feature #9712 (New): ensure that the language and encoding options in use across the current cust...
Greg Shah
11:35 AM Feature #5491 (Closed): custom locale/collation implementations
The remaining work is in #9711. Greg Shah
07:33 AM Bug #9669 (Test): Optimize RecordMeta.applyInitialValues
Alexandru Lungu
07:08 AM Bug #9669: Optimize RecordMeta.applyInitialValues
Branch 9669a was merged to trunk as rev.15743 and archived. Artur Școlnic
06:24 AM Bug #9669 (Merge Pending): Optimize RecordMeta.applyInitialValues
Please merge 9669a to trunk after 9466b. Alexandru Lungu
06:13 AM Bug #9669: Optimize RecordMeta.applyInitialValues
FwdTests passed. Artur Școlnic
05:40 AM Bug #9669 (Internal Test): Optimize RecordMeta.applyInitialValues
I am OK with the changes:
* please fix @if (data[i] != null) {@ brace positioning.
This can go into internal test...
Alexandru Lungu
05:13 AM Bug #9669: Optimize RecordMeta.applyInitialValues
Removed getProperties in rev 15722. Artur Școlnic
05:00 AM Bug #9669 (Review): Optimize RecordMeta.applyInitialValues
I committed the latest changes to rev 15721.
Artur Școlnic
02:34 AM Bug #9669: Optimize RecordMeta.applyInitialValues
Alexandru Lungu wrote:
> ** Anyway, I think this approach is not completely right because you presume that the @dyna...
Artur Școlnic
06:22 AM Feature #9305 (WIP): Replace begins with interval based conditional
For reference, I misunderstood the documentation. By "C locale", it doesn't mean "libc", but actual C locale (aka POS... Alexandru Lungu
05:02 AM Feature #9305 (Review): Replace begins with interval based conditional
As a resolution for #9305, I updated [[p2j:4GL_Database_Access_Performance_Tips]]. Please review. Alexandru Lungu

02/26/2025

05:36 PM Bug #9669: Optimize RecordMeta.applyInitialValues
Alexandru Lungu wrote:
> ** Anyway, I think this approach is not completely right because you presume that the @dyna...
Artur Școlnic
09:12 AM Bug #9669: Optimize RecordMeta.applyInitialValues
> Please post the test-cases you built for testing 9669a.
As part of 9669a review:
* There is a misalignment of...
Alexandru Lungu
05:58 AM Bug #9669 (WIP): Optimize RecordMeta.applyInitialValues
> Considering the nature of the changes, I went ahead with the testing, FwdTests and 2 large customer application uni... Alexandru Lungu
03:02 AM Bug #9669: Optimize RecordMeta.applyInitialValues
Considering the nature of the changes, I went ahead with the testing, FwdTests and 2 large customer application unit ... Artur Școlnic
04:49 PM Bug #9683: CompoundQuery is doing extra hydration attempts
I committed an early implementation for the RetrieveResults, the code is in 9683a/15725. Code formatting, javadoc and... Artur Școlnic
09:14 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
OK Greg Shah
09:07 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
I just used the @assert@ to validate that I get the same results with the new implementation vs the old one while run... Andrei Plugaru
09:05 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
> Assert as in @assert@ statement from Java. If so, did you run the Java process with @-ea@ to activate it? Personall... Greg Shah
07:57 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
Alexandru Lungu wrote:
> Assert as in @assert@ statement from Java. If so, did you run the Java process with @-ea@ t...
Andrei Plugaru
07:52 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
> So, I think I will abandon the idea to override equals, and, simply create another method which will do this checki... Alexandru Lungu
07:30 AM Bug #9701 (Review): RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality...
*I committed @9701a/15735@.* As I said in the last note, I just created a new method in @Record@ to check if the data... Andrei Plugaru
06:32 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
@equals@ is used explicitly only there, however I just realised it could be used as key in collections like @Set@ or ... Andrei Plugaru
06:21 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
> I actually found just one usage of Record.equals in LocalSyncher.preSynch: if (foreignDMO null || foreignDMO.equals... Alexandru Lungu
06:13 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
Alexandru Lungu wrote:
> * Please investigate if there are @equals@ comparisons of @BaseRecord@ across FWD.
==
I a...
Andrei Plugaru
04:57 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
> At the moment, I am thinking of overriding the equals in BaseRecord and make it check the elements in data array. I... Alexandru Lungu
04:23 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
I found this note in @CompareOps.equals@: @// special case: an empty comhandle is considered be equal to the zero int... Andrei Plugaru
03:32 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
At the moment, I am thinking of overriding the @equals@ in @BaseRecord@ and make it check the elements in data array.... Andrei Plugaru
08:13 AM Feature #9093 (Internal Test): add protection for multi-tenant imports to optionally only import ...
Ovidiu Maxiniuc wrote:
> [...]
> I committed the changes and rebased the branch to latest trunk. Current revision i...
Eric Faulhaber
05:54 AM Bug #9667 (Test): Bottleneck in BaseRecord.getActiveUpdateDiffs
Alexandru Lungu
05:45 AM Bug #9667: Bottleneck in BaseRecord.getActiveUpdateDiffs
Branch 9667a was merged into trunk as rev. 15737 and archived. Artur Școlnic
04:58 AM Bug #9667 (Merge Pending): Bottleneck in BaseRecord.getActiveUpdateDiffs
Please merge 9667a to trunk after 9615a. Alexandru Lungu
02:53 AM Bug #9667: Bottleneck in BaseRecord.getActiveUpdateDiffs
Alexandru Lungu wrote:
> Afterwards:
> * 2 large customer application unit tests and ChUI regression tests.
All ...
Artur Școlnic

02/25/2025

05:07 PM Feature #9093: add protection for multi-tenant imports to optionally only import tables that are ...
Eric Faulhaber wrote:
> Code review 9093a/15727-15728:
>
> For a small update, this took me several read-throughs...
Ovidiu Maxiniuc
03:16 PM Feature #9093: add protection for multi-tenant imports to optionally only import tables that are ...
Code review 9093a/15727-15728:
For a small update, this took me several read-throughs to comprehend. However, I th...
Eric Faulhaber
01:37 PM Bug #9669: Optimize RecordMeta.applyInitialValues
Committed a small change to rev 15719. Artur Școlnic
05:17 AM Bug #9669 (Review): Optimize RecordMeta.applyInitialValues
I addressed the review, the code is in rev 15718. Artur Școlnic
03:34 AM Bug #9669: Optimize RecordMeta.applyInitialValues
> My goal was to store the initial non null values, in case this bitset could be used in the future, but storing null... Alexandru Lungu
03:10 AM Bug #9669: Optimize RecordMeta.applyInitialValues
Alexandru Lungu wrote:
> * @flip@ operation seems redundant. Instead of @or@-ing with @initialDataBitSet@ and then f...
Artur Școlnic
10:36 AM Feature #6720: lazy hydration
> This affirmation is correct for the "new buffer", but not for the "old buffer". The old buffer stores a snapshot of... Greg Shah
09:42 AM Feature #6720: lazy hydration
> Probably we'll have to do a full hydration of the record at the moment a missing property is accessed during the ex... Andrei Plugaru
09:03 AM Feature #6720: lazy hydration
Creating the snapshot of a partially-hydrated record will take only the information available at that time. I do not ... Ovidiu Maxiniuc
08:41 AM Feature #6720: lazy hydration
> Are we adding implicit accesses (in our runtime) to fields that are not otherwise accessed explicitly in the 4GL co... Alexandru Lungu
08:30 AM Feature #6720: lazy hydration
Are we adding implicit accesses (in our runtime) to fields that are not otherwise accessed explicitly in the 4GL code... Greg Shah
06:48 AM Feature #6720: lazy hydration
Andrei, I just found another usage of @snapshot@. A so called @armCurrentChanged@ that can be triggered if you run a ... Alexandru Lungu
06:38 AM Feature #6720: lazy hydration
Starting from the testcase in the last note, Alex and I analyzed more @RecordBuffer.armWriteTrigger@ method.
We an...
Andrei Plugaru
04:34 AM Feature #6720: lazy hydration
I have finished the testcase from #6720-113 to have the hydrator invalidated and also modifying the record in the DB ... Andrei Plugaru
03:27 AM Feature #6720: lazy hydration
> In the last find next query it has as placeholder an unhydrated record. I think this could be prone to errors if th... Alexandru Lungu
02:11 AM Feature #6720: lazy hydration
I am further investigating the regressions on the FWD tests. I still think that the root issue could be related to th... Andrei Plugaru
09:58 AM Bug #9701 (WIP): RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
Created branch @9701a@ from rev. 15734. Andrei Plugaru
06:04 AM Bug #9701: RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality check
In a profiled scenario (#9692), there are 3.5k @RecordBuffer.updateCurrentChanged@ calls. The DMOs used by this have ... Alexandru Lungu
05:50 AM Bug #9701 (Test): RecordBuffer.updateCurrentChanged can be optimized to use a fast DMO equality c...
Alexandru Lungu
07:04 AM Bug #9702: BaseRecord.getDirtyIndices is slow
PS: @BaseRecord.getUnvalidatedIndices@ seems to have a better performance, but for my tests this is called only 54k t... Alexandru Lungu
06:44 AM Bug #9702: BaseRecord.getDirtyIndices is slow
In a profiled scenario (#9692), there are 104k calls to @BaseRecord.getDirtyIndices@. The scenario is changing extent... Alexandru Lungu
06:20 AM Bug #9702 (New): BaseRecord.getDirtyIndices is slow
Alexandru Lungu
03:43 AM Bug #9667 (Internal Test): Bottleneck in BaseRecord.getActiveUpdateDiffs
The changes look functionally right. There are still some formatting issues:
* @validation.validateMaybeFlush();@ is...
Alexandru Lungu
03:16 AM Bug #9667 (Review): Bottleneck in BaseRecord.getActiveUpdateDiffs
I committed the changes to rev 15717. Artur Școlnic
03:11 AM Bug #9667: Bottleneck in BaseRecord.getActiveUpdateDiffs
I made the changes, considering that they are trivial, I will move on with testing. Artur Școlnic

02/24/2025

10:15 AM Bug #9670 (Test): Rewrite UnclosablePreparedStatement JMXs to honor FwdServerJMX.JMX_DEBUG
Branch 9670a was merged to trunk rev 15731 and archived. Andrei Iacob
10:07 AM Bug #9670 (Merge Pending): Rewrite UnclosablePreparedStatement JMXs to honor FwdServerJMX.JMX_DEBUG
Please merge to trunk now. Alexandru Lungu
09:52 AM Bug #9670: Rewrite UnclosablePreparedStatement JMXs to honor FwdServerJMX.JMX_DEBUG
I ran the unittest suite of a large customer, no issues.
Let me know when this can be merged.
Andrei Iacob
09:17 AM Bug #9670 (Internal Test): Rewrite UnclosablePreparedStatement JMXs to honor FwdServerJMX.JMX_DEBUG
I am OK with the changes. Please do some slim testing to ensure there are no obvious issues. Alexandru Lungu
08:57 AM Bug #9670: Rewrite UnclosablePreparedStatement JMXs to honor FwdServerJMX.JMX_DEBUG
Please update the branch now. Andrei Iacob
08:54 AM Bug #9670: Rewrite UnclosablePreparedStatement JMXs to honor FwdServerJMX.JMX_DEBUG
The latest rev. is still 15715. Alexandru Lungu
09:58 AM Feature #9305: Replace begins with interval based conditional
> I assume from these mixed results that you are testing this on an analyzed table with a lot of data. The PostgreSQL... Alexandru Lungu
09:49 AM Feature #9093: add protection for multi-tenant imports to optionally only import tables that are ...
I'll let Eric do the code review but from a user perspective, the changes look really good. Nice job! Greg Shah
09:25 AM Bug #9667 (WIP): Bottleneck in BaseRecord.getActiveUpdateDiffs
Review of 9667a:
* From @BaseRecord.getActiveUpdateDiffs@...
Alexandru Lungu
09:15 AM Bug #9669 (WIP): Optimize RecordMeta.applyInitialValues
Review of 9669a:
* @flip@ operation seems redundant. Instead of @or@-ing with @initialDataBitSet@ and then flip, p...
Alexandru Lungu
03:45 AM Bug #9697 (WIP): Use only indexed fields when performing record snapshot
Created @9697a@ based on rev. 15726. Andrei Plugaru
03:29 AM Bug #9697: Use only indexed fields when performing record snapshot
The scope of this task is to make @Record.snapshot@ use only the indexed fields.
The reason we got here is because o...
Andrei Plugaru
03:22 AM Bug #9697 (WIP): Use only indexed fields when performing record snapshot
Andrei Plugaru

02/22/2025

01:00 PM Feature #9093 (Review): add protection for multi-tenant imports to optionally only import tables ...
Please review. Ovidiu Maxiniuc
12:59 PM Feature #9093 (WIP): add protection for multi-tenant imports to optionally only import tables tha...
I did multiple tests with import from a multi-tenant enabled database. A first conclusion is that the database export... Ovidiu Maxiniuc

02/21/2025

04:47 PM Feature #9305: Replace begins with interval based conditional
Alexandru Lungu wrote:
> > Don't we need this to be (upper(rtrim(tt_1_1__im0_.f1)) in order to give the database a c...
Eric Faulhaber
10:48 AM Feature #9305: Replace begins with interval based conditional
> Don't we need this to be (upper(rtrim(tt_1_1__im0_.f1)) in order to give the database a chance to match an index? A... Alexandru Lungu
10:42 AM Feature #9305: Replace begins with interval based conditional
I was a bit puzzled why isn't @BEGIN@ implemented as an UDF?
I mean that was my first reaction, to see how @udf.begi...
Ovidiu Maxiniuc
10:17 AM Feature #9305: Replace begins with interval based conditional
Alexandru Lungu wrote:
> The conversion of a simple @find first tt where tt.f1 begins tst@ yields:
> [...]
>
> T...
Eric Faulhaber
08:49 AM Feature #9305: Replace begins with interval based conditional
The conversion of a simple @find first tt where tt.f1 begins tst@ yields:... Alexandru Lungu
10:35 AM Bug #9683 (WIP): CompoundQuery is doing extra hydration attempts
Regarding 9683a:
* for @collectRowData@, if the query is non-scrolling and off-end, the code still returns @new Obje...
Alexandru Lungu
09:06 AM Bug #9683 (Review): CompoundQuery is doing extra hydration attempts
Indeed there are callers of @processComponent@ and @collectRowData@ that do not use the row data, only the fact that ... Artur Școlnic
06:21 AM Bug #9683 (WIP): CompoundQuery is doing extra hydration attempts
Artur Școlnic
06:15 AM Bug #9683: CompoundQuery is doing extra hydration attempts
In a profiled scenario, when running a CompoundQuery, there are 63k calls to @Results.getRow@:
* 21.3k come from @Pr...
Alexandru Lungu
05:54 AM Bug #9683 (Review): CompoundQuery is doing extra hydration attempts
Alexandru Lungu
10:04 AM Feature #6720: lazy hydration
Andrei, having 9030b in trunk will be ideal, but I don't have enough focus and time to continue work onto that :/
P...
Alexandru Lungu
09:54 AM Feature #6720: lazy hydration
I did some investigation of the error I get in the FWD tests. The good news is that it seems that all have the same e... Andrei Plugaru
03:31 AM Feature #6720: lazy hydration
I have ran the FWD tests of another large customer application. Unfortunately, it shows some regressions :((
Howev...
Andrei Plugaru
09:35 AM Feature #9542 (Test): finish ORIGIN-HANDLE ProDataSet attribute
Branch 9544a which contains the changes from this task was merged into trunk as r15725 and then was archived. Ovidiu Maxiniuc
09:34 AM Feature #9544 (Test): implement missing SESSION handle attributes
Branch 9544a was merged into trunk as r15725 and then was archived. Ovidiu Maxiniuc
07:40 AM Feature #9544 (Merge Pending): implement missing SESSION handle attributes
Please merge to trunk. Greg Shah
08:55 AM Feature #7020: always use "expanded" extent fields
*7020c* was rebased to trunk *15724* and is now at revision *15748*. Stefanel Pezamosca
05:47 AM Bug #9669 (Review): Optimize RecordMeta.applyInitialValues
I fixed the issue, 9669a/15717 is ready for review. Artur Școlnic
04:04 AM Bug #9669 (WIP): Optimize RecordMeta.applyInitialValues
I did a bit of testing and found some regressions, will fix them. Artur Școlnic

02/20/2025

10:14 AM Bug #9669 (Review): Optimize RecordMeta.applyInitialValues
I committed the code to 9669a/15716, it is ready for review. Artur Școlnic
05:41 AM Bug #9669 (WIP): Optimize RecordMeta.applyInitialValues
Artur Școlnic
10:11 AM Bug #9670: Rewrite UnclosablePreparedStatement JMXs to honor FwdServerJMX.JMX_DEBUG
Replaced @CREATE_DYN_TT.timer@ with @CREATE_DYN_TT.timerWithReturn@. Committed changes. Andrei Iacob
09:47 AM Bug #9670: Rewrite UnclosablePreparedStatement JMXs to honor FwdServerJMX.JMX_DEBUG
I am ok with the changes. One small change request:
* In @TempTableBuilder@, the @boolean[] res = new boolean[1];@ i...
Alexandru Lungu
04:05 AM Bug #9670 (Review): Rewrite UnclosablePreparedStatement JMXs to honor FwdServerJMX.JMX_DEBUG
Extended this refactor for @DynamicQueryHelper@ and @TempTableBuilder@.
Added changes to 9670a/15715.
Andrei Iacob
02:13 AM Bug #9670 (WIP): Rewrite UnclosablePreparedStatement JMXs to honor FwdServerJMX.JMX_DEBUG
Andrei Iacob
10:06 AM Feature #6720: lazy hydration
> Well, I made getLoadedFields return a BitSet with loaded fields. This makes integration in markIncomplete seamless.... Alexandru Lungu
09:54 AM Feature #6720: lazy hydration
Andrei Plugaru wrote:
> Yes, you are right, I will switch it back.
Done that in @6720b/15704@.
Andrei Plugaru
09:42 AM Feature #6720: lazy hydration
Alexandru Lungu wrote:
> > getLoadedFields
>
> Isn't this equivalent to the already existing @getProps@?
Well,...
Andrei Plugaru
09:22 AM Feature #6720: lazy hydration
> getLoadedFields
Isn't this equivalent to the already existing @getProps@?
> In BaseRecord.getUnhydratedFields...
Alexandru Lungu
09:06 AM Feature #6720: lazy hydration
*Committed @6720b/15703@ with the fix for the issue described in the last notes*. My approach was to create another m... Andrei Plugaru
09:01 AM Feature #6720: lazy hydration
Alexandru Lungu wrote:
> I think @readFields@ should be re-thinked a bit, because it has quite a weird integration w...
Eric Faulhaber
04:03 AM Feature #6720: lazy hydration
I think @readFields@ should be re-thinked a bit, because it has quite a weird integration with @liveProps@ - it may b... Alexandru Lungu
10:01 AM Bug #9667 (Review): Bottleneck in BaseRecord.getActiveUpdateDiffs
I committed the code to 9667a/15716, it is ready for review. Artur Școlnic
04:06 AM Bug #9667 (WIP): Bottleneck in BaseRecord.getActiveUpdateDiffs
Artur Școlnic

02/19/2025

12:41 PM Feature #6720: lazy hydration
I found another case where @6720b@ works incorrectly:... Andrei Plugaru
10:21 AM Bug #9670: Rewrite UnclosablePreparedStatement JMXs to honor FwdServerJMX.JMX_DEBUG
This task is straight-forward. Most API from UnclosablePreparedStatement are using a lambda function to time measure ... Alexandru Lungu
10:20 AM Bug #9670 (Test): Rewrite UnclosablePreparedStatement JMXs to honor FwdServerJMX.JMX_DEBUG
Alexandru Lungu
10:18 AM Bug #9669: Optimize RecordMeta.applyInitialValues
In a profiled scenario (#9652), there are 3.6k calls to RecordMeta.applyInitialValues:
* all are generated by @Rec...
Alexandru Lungu
10:13 AM Bug #9669 (Test): Optimize RecordMeta.applyInitialValues
Alexandru Lungu
05:27 AM Bug #9667: Bottleneck in BaseRecord.getActiveUpdateDiffs
In a profiled scenario (#9652), there are 46k calls to @BaseRecord.getActiveUpdateDiffs@:
* 26.8k caused by DMO sett...
Alexandru Lungu
05:09 AM Bug #9667 (Test): Bottleneck in BaseRecord.getActiveUpdateDiffs
Alexandru Lungu
03:30 AM Bug #9590: Double LOAD for each record in FWD
Rebased *9590a* to latest trunk *trunk/15713*, the branch is now at revision *15714*. Dănuț Filimon

02/18/2025

10:19 AM Feature #6720: lazy hydration
For solving the issue presented in #6720-98 I have created a new method which evicts the ResultSet from the cache and... Andrei Plugaru
08:31 AM Feature #6720: lazy hydration
FYI, @ownResultSet@ and @unownResultSet@ are things specific to #6720 effort - feel free to adjust their usage to fit... Alexandru Lungu
07:29 AM Feature #6720: lazy hydration
The issue regarding the lack of validation of uniqueness have been solved by calling @rs.isLast()@ and making the res... Andrei Plugaru
02:16 AM Feature #6720: lazy hydration
I actually see now why that if statement was missing. When we call @rs.next()@, the result set will be invalidated, s... Andrei Plugaru
08:04 AM Feature #7020: always use "expanded" extent fields
First try to solve contains for expanded extent fields in a temp-table looks like this:
For example, for a field n...
Stefanel Pezamosca

02/17/2025

10:52 AM Feature #6720: lazy hydration
While I was investigating the unit tests for that large customer application, I found out a scenario that somehow doe... Andrei Plugaru
04:31 AM Feature #6720: lazy hydration
Please note that the unit tests are starting with an empty database, so all persistent data that is used is actually ... Alexandru Lungu
02:35 AM Feature #6720: lazy hydration
Eric Faulhaber wrote:
> My gut tells me this is related to something we are doing internally in the runtime (hopeful...
Andrei Plugaru
04:18 AM Bug #9317 (Test): FIRST/LAST clauses can avoid generating sub-selects if the WHERE clause matches...
Ioana, feel free to also merge 9317a to 7156c and 7156d. Alexandru Lungu

02/14/2025

02:34 PM Feature #6720: lazy hydration
I suspect the application does not actually need 94%. My gut tells me this is related to something we are doing inter... Eric Faulhaber
02:20 PM Feature #6720: lazy hydration
> It seems that we need, at least during the unit tests for this large customer application, to hydrate over 94% of f... Greg Shah
10:03 AM Feature #6720: lazy hydration
I have added counters to see how many fields are hydrated using the LazyResultSet vs using the fallback loader.
|_. ...
Andrei Plugaru
08:45 AM Feature #6720: lazy hydration
We have also discussed during the meeting, but I will also post here for reference. Each element of expanded extents ... Andrei Plugaru
08:04 AM Feature #6720: lazy hydration
Andrei, for denormalized extent, there can be tables with 100s or more of fields, with maybe 90% of them from extent.... Constantin Asofiei
07:40 AM Feature #6720: lazy hydration
The current results:
|_. Counter name |_. Temp/Persistent|_. Hits |
|/2=. Total number of fields | Temp |1565973 |...
Andrei Plugaru
04:59 AM Feature #6720: lazy hydration
Alexandru Lungu wrote:
> Good statistic! Quick question: are the numbers cumulative for temp and persistent tables. ...
Andrei Plugaru
04:49 AM Feature #6720: lazy hydration
Good statistic! Quick question: are the numbers cumulative for temp and persistent tables. If so, can we make a disti... Alexandru Lungu
04:01 AM Feature #6720: lazy hydration
I have added also other counters to measure the impact of the approach presented in the last notes. Here are the resu... Andrei Plugaru
01:54 PM Feature #7020: always use "expanded" extent fields
> What do you think, should this be done in another task ?
No, let's solve it here, once and for all time.
Greg Shah
02:09 AM Feature #7020: always use "expanded" extent fields
The *7020c* rebased with *trunk* revision *15703*. New revision is *15723*. Stefanel Pezamosca
09:59 AM Bug #9633 (WIP): bulk delete for permanent tables
Andrei Iacob
07:24 AM Bug #9318: Make record nursery visible on removeRecords
I actually missed a regression in etf, so I am currently investigating it. Dănuț Filimon
06:17 AM Bug #9317: FIRST/LAST clauses can avoid generating sub-selects if the WHERE clause matches a uniq...
9317a is merged to trunk as rev. 15708 and archived. Ioana-Cristina Prioteasa
05:18 AM Bug #9317 (Merge Pending): FIRST/LAST clauses can avoid generating sub-selects if the WHERE claus...
Please merge 9317a to trunk now. Alexandru Lungu

02/13/2025

10:54 AM Feature #6720: lazy hydration
Committed @6720b/15700@ with the the implementation to hydrate all the unhydrated fields when the session closes.
...
Andrei Plugaru
07:16 AM Feature #6720: lazy hydration
> Regarding, the idea to fully hydrate the records that are still loaded when the session closes. I also like it, I c... Greg Shah
06:21 AM Feature #6720: lazy hydration
So, I have tried the example from the last note where I closed the session before the commit in debugger. As a result... Andrei Plugaru
04:08 AM Feature #6720: lazy hydration
Agree with #6720-80. Doing updates will keep the session open as long as the transaction is open. If there is no tran... Alexandru Lungu
02:53 AM Feature #6720: lazy hydration
Yesterday, I had a discussion with Alex, mainly focused on 2 things:
# Should the session really be closed when exit...
Andrei Plugaru
09:48 AM Feature #7020: always use "expanded" extent fields
I did some other small changes and *7020c* is now at revision *15707*.
With denorm-extent the name of the word tab...
Stefanel Pezamosca
06:00 AM Bug #9590: Double LOAD for each record in FWD
Committed *9590a/15680*. Avoid double firing of a FIND trigger when the DynamicResults use a RandomAccessQuery query.... Dănuț Filimon
03:55 AM Bug #9590: Double LOAD for each record in FWD
The fix from #9590-22 is good for DynamicResults, but not ScrollingResults. We rely on the already parsed results and... Dănuț Filimon
02:27 AM Bug #9633: bulk delete for permanent tables
Eric Faulhaber wrote:
> Alexandru Lungu wrote:
> > We have the bulk delete for temporary tables, maybe that can be ...
Constantin Asofiei

02/12/2025

09:26 AM Bug #9633: bulk delete for permanent tables
Alexandru Lungu wrote:
> We have the bulk delete for temporary tables, maybe that can be used as a source of inspira...
Eric Faulhaber
08:50 AM Bug #9633: bulk delete for permanent tables
We have the bulk delete for temporary tables, maybe that can be used as a source of inspiration. Alexandru Lungu
08:47 AM Bug #9633: bulk delete for permanent tables
Another note: we should always force an outer tx when we do the bulk delete. Because the code like @for each book ex... Constantin Asofiei
09:18 AM Feature #6720: lazy hydration
I currently have this change to @Hydrator.java@:... Andrei Plugaru
07:27 AM Bug #9317: FIRST/LAST clauses can avoid generating sub-selects if the WHERE clause matches a uniq...
9317a/15689 passed the MT harness test ✅. Ovidiu Maxiniuc
 

Also available in: Atom