Activity
From 08/22/2025 to 09/20/2025
09/19/2025
- 02:08 PM Bug #10455: Persistent table CAN-FIND FIRST issue
- Alexandru, please review.
Teodor:
* please don't call @BufferManager.getInstance()@ - get it from @WorkArea.tm@.... - 01:58 PM Bug #10526: Progressive results don't get invalidated when buffer-copy is performed
- Review of 10526a rev 16149:
* changing the access modifier for @RecordBuffer@ methods has implications in the proxy... - 01:28 PM Bug #10590 (WIP): Indices are not taken from the model temp-table
- Eduard, the table AST should already have the INDEX nodes. Keeping the dictionary-wide @tableIndexesNames@ map will ...
- 01:14 PM Feature #5220: extend word index support to SQL Server
- Stefanel - can we consider this done for SQLServer?
- 11:12 AM Feature #10583 (Review): Implement a Database specific records cache.
- 10:29 AM Feature #10583: Implement a Database specific records cache.
- I completed the first stable version of the implementation.
The main points are:
* Each FFCache instance gets a new... - 10:55 AM Bug #9763 (Internal Test): xml-node-name buffer option
- I think the update is fine. Please go ahead with internal testing.
- 10:25 AM Bug #9763 (Review): xml-node-name buffer option
- 10:25 AM Bug #9763 (WIP): xml-node-name buffer option
- 10:24 AM Bug #9763: xml-node-name buffer option
- Exporting of child buffer (in a dataset relation) is using the attributes from @TempTableSchema@, when it should swit...
- 03:59 AM Bug #9383 (Review): Cache only the current delegate on transaction commit if a ProgressiveResults...
- Rev. 16144 should now hold the invariant from #9383-53. Please review.
09/18/2025
- 08:18 AM Bug #10590 (Review): Indices are not taken from the model temp-table
- 08:18 AM Bug #10590 (WIP): Indices are not taken from the model temp-table
- Committed on 10590a, rev. 16174.
Now the indices of the model temp-table are added to the main temp-table.
I al... - 07:29 AM Feature #10583: Implement a Database specific records cache.
- I managed to write an initial implementation, which is far from perfect, but stable enough to recreate the test from ...
- 04:26 AM Feature #10583 (WIP): Implement a Database specific records cache.
- 07:17 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- Razvan-Nicolae Chichirau wrote:
> I see. In this case, we need to change the whole @transactionCommiting()@ because ... - 07:08 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- I see. In this case, we need to change the whole @transactionCommiting()@ because it is already constructed to yield ...
- 05:47 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- I can't deny that I am a bit stressed with such "partial" bracket. If you do a @previous@, then @Locator locator = lo...
- 05:39 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- > In #9383-46, position 830 is actually rows.get(0). The first record from rows will always match the record under po...
- 05:37 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- > Moreover, why the total size of reduction should always be 100? In your example from #9383-47, rows should end up w...
- 04:35 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- In #9383-46, position 830 is actually @rows.get(0)@. The first record from @rows@ will always match the record under ...
- 04:25 AM Bug #9383 (WIP): Cache only the current delegate on transaction commit if a ProgressiveResults is...
- Review of 9383a:
> rows = new ArrayList<>(rows.subList(0, newSize));
Is this right? I expect that the starting ... - 04:19 AM Bug #9383 (Review): Cache only the current delegate on transaction commit if a ProgressiveResults...
- Please review rev. 16143.
- 03:33 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- > As for actualMaxExponent = 2, setting it when bracket < 2 will force ProgressiveResults to fetch in brackets of max...
- 02:27 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- Alexandru Lungu wrote:
> If the bracket you are looking at is the 100th one generated with exponent 5, then techni... - 06:46 AM Feature #6695 (Review): Multi-table preselect query may underperform due to repetitive fetching
- I have committed @6695/ rev. 16170@
First, I have fixed here the problem exposed in #6695-42. I have solved this by ... - 03:25 AM Feature #6695 (WIP): Multi-table preselect query may underperform due to repetitive fetching
- I observed a small issue regarding the usage of @ScrollableResults.get(LazyFetching fetching, boolean forceOnlyId)@ i...
- 06:32 AM Bug #10560: Wrong buffer picking for ReadXml when seralization name of a buffer correspond to the...
- I have created the following dataset structure, one thing to note that @Second@ table has a relationship with with @I...
09/17/2025
- 02:47 PM Bug #10590: Indices are not taken from the model temp-table
- I think I found the problem why the indices from model table are not taken into consideration, this the culprit code ...
- 06:37 AM Bug #10590: Indices are not taken from the model temp-table
- The following example:...
- 06:33 AM Bug #10590 (Test): Indices are not taken from the model temp-table
- 12:14 PM Feature #6695 (Review): Multi-table preselect query may underperform due to repetitive fetching
- I have committed @6695a/16167-16169@. Here, I have also adapted the solution for persistent tables, fixed some small ...
- 06:20 AM Feature #6695: Multi-table preselect query may underperform due to repetitive fetching
- While trying to understand the behaviour for FIND triggers, I actually understood that currently, @6695a@ doesn't imp...
- 08:24 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- > In this case, we should copy the rows from 830 to 910. We just need to calculate what is the starting row of the ne...
- 07:58 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- For example, the current position is 830:
* Old bracket = 3 (from 111 to 1010)
* new bracket = 10 (from 811 to 910)... - 07:50 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- PS: I think there are cases in which you can't, because the offsets of the records may be 1111, 1112, 1113, ..., 2110...
- 07:48 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- > You are correct, but what if we just shrink rows to size 100 (i.e. Math.pow(BASE, actualMaxExponent))? Wouldn't tha...
- 07:43 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- Alexandru Lungu wrote:
> > delegate = new SimpleResults(rows);
>
> Is a delegate with maybe 1M rows, but this i... - 07:35 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- > @bracket = lastValidBracket = locateRow(position).getBracket();@
This will return the bracket index N considerin... - 07:31 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- I've just now realized that we don't actually need neither to call @moveTo@ because we already have the rows in cache...
- 06:53 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- But there is also a trailing:...
- 06:46 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- Yes. Executing @moveTo@ may be safer than manually updating the state at the cost of re-executing the query. The good...
- 06:30 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- > so we perform moveTo just to align ProgressiveResults to the new state, but completely ignore the fetched results, ...
- 06:18 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- Alexandru Lungu wrote:
> ** Also, shouldn't it be @> 2@ instead of @>= 2@? If it is already equal to 2, the progress... - 06:07 AM Bug #9383 (WIP): Cache only the current delegate on transaction commit if a ProgressiveResults is...
- Review of 9383a:
* I think @getMaxExponent@ should have:... - 06:26 AM Feature #10583: Implement a Database specific records cache.
- Alexandru Lungu wrote:
> A transactional database can have different representation of the same record at the same t... - 06:20 AM Feature #10583: Implement a Database specific records cache.
- > Can't this be changed? I don't see why a dmo should belong to a specific session, it should be the representation o...
- 06:10 AM Feature #10583: Implement a Database specific records cache.
- Alexandru Lungu wrote:
> * by nature DMOs are *per-session*.
Can't this be changed? I don't see why a dmo should... - 05:56 AM Feature #10583: Implement a Database specific records cache.
- > - multiple cache instances can hold the same record?..
Yes, different sessions can cache different *versions* of... - 05:29 AM Feature #10583: Implement a Database specific records cache.
- A database specific records cache could be 'simulated', for testing purposes, by increasing the existing session case...
09/16/2025
- 10:51 AM Feature #6695: Multi-table preselect query may underperform due to repetitive fetching
- I have made some commits to @6695a@:
# *16165* - The most important change is that I deleted some throws for @Illega... - 07:40 AM Feature #10583: Implement a Database specific records cache.
- Currently, @BaseRecords@ are cached in the session cache, which has a few drawbacks:
- fairly small capacity;
- one... - 07:38 AM Feature #10583 (Review): Implement a Database specific records cache.
09/15/2025
- 12:09 PM Bug #10560: Wrong buffer picking for ReadXml when seralization name of a buffer correspond to the...
- Eduard, see 10560a rev 16164 for my current changes. Please try to break them (see the TODO in XmlImport) by creatin...
- 03:41 AM Bug #10560: Wrong buffer picking for ReadXml when seralization name of a buffer correspond to the...
- There is another case where there is a @field f1 serialize-name "oa:f1"@, and the XML has the field like @f1@ - in th...
- 10:39 AM Feature #6695: Multi-table preselect query may underperform due to repetitive fetching
- Even though the scope of this task is mainly optimizing the @PreselectQuery@ case, I found the idea that is applied h...
- 06:46 AM Feature #6695: Multi-table preselect query may underperform due to repetitive fetching
- I have created branch @6695a@ and ported and committed the changes from #6695-32 in @6695a/rev.16163-16164@. However,...
- 10:09 AM Bug #10171 (Test): Word Index/CONTAINS support for MS SQL Server.
09/12/2025
- 09:10 AM Bug #10560: Wrong buffer picking for ReadXml when seralization name of a buffer correspond to the...
- I have the following test case:...
- 09:00 AM Bug #10560 (Closed): Wrong buffer picking for ReadXml when seralization name of a buffer correspo...
- 05:56 AM Bug #9016 (Test): Improve performance in FQLPreprocessor by using astCache
- 05:56 AM Bug #9016: Improve performance in FQLPreprocessor by using astCache
- Branch 9016a was merged into trunk as revision 16162 and archived.
- 05:48 AM Bug #9016 (Merge Pending): Improve performance in FQLPreprocessor by using astCache
- I'll be merging 9016a now.
- 04:57 AM Feature #6695: Multi-table preselect query may underperform due to repetitive fetching
- The results from the last note seem to be skewed as I was having query logging enabled. Without that I am getting muc...
- 04:21 AM Feature #6695: Multi-table preselect query may underperform due to repetitive fetching
- I have started working on this task by redoing the tests from #6695-3 both in FWD and 4GL. These are the results:
|_... - 04:29 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- Alex, please review rev. 16142 when possible.
Note that #10172 sees only a reduction of 7.5k @load()@ calls out of...
09/11/2025
- 08:11 AM Bug #10480: Wrong sort criteria in FOR LAST when index has desc component
- Artur, can you pick up 10480a fox performance testing (only runtime)?
09/10/2025
- 08:46 AM Bug #10542 (Internal Test): Write trigger called when multiple buffers reference the same record
- 08:39 AM Bug #10542: Write trigger called when multiple buffers reference the same record
- Alexandru Lungu wrote:
> I am OK with the changes.
>
> * @setLocked@ should always be set to false. It is basica... - 08:21 AM Bug #10542: Write trigger called when multiple buffers reference the same record
- I am OK with the changes.
* @setLocked@ should always be set to false. It is basically related to the fact that t... - 07:56 AM Bug #10542 (Review): Write trigger called when multiple buffers reference the same record
- 07:56 AM Bug #10542 (WIP): Write trigger called when multiple buffers reference the same record
- Committed on 10542a, rev. 16160.
- 07:14 AM Bug #10542: Write trigger called when multiple buffers reference the same record
- > Then we have to really fire the trigger only on explicit releases. The implicit query initialisation will fire it o...
- 06:43 AM Bug #10542: Write trigger called when multiple buffers reference the same record
- Very well.
Then we have to really fire the trigger only on explicit releases. The implicit query initialisation will... - 06:38 AM Bug #10542: Write trigger called when multiple buffers reference the same record
- Ovidiu Maxiniuc wrote:
> Please test this assumption to confirm or infirm my assumption.
I have the following tes... - 06:29 AM Bug #10542: Write trigger called when multiple buffers reference the same record
- Does it matter? In both cases, the modified record is still loaded in a buffer. The trigger will have the chance to f...
- 06:26 AM Bug #10542: Write trigger called when multiple buffers reference the same record
- Ovidiu Maxiniuc wrote:
> <notextile>@</notextile>Alex: @prepareBuffer()@ calls @buffer.flush()@. The @flush()@ (@val... - 06:22 AM Bug #10542: Write trigger called when multiple buffers reference the same record
- <notextile>@</notextile>Alex: @prepareBuffer()@ calls @buffer.flush()@. The @flush()@ (@validateMaybeFlush()@ actuall...
- 05:19 AM Bug #10542: Write trigger called when multiple buffers reference the same record
- I am inclined to say that @prepareBuffer@ should have taken @isMultiplyReferenced@ into consideration.
- 05:08 AM Bug #10542: Write trigger called when multiple buffers reference the same record
- Alexandru Lungu wrote:
>
> Just a heads-up: in FWD, the newly created records are *flushed* to the database if all... - 04:35 AM Bug #10542: Write trigger called when multiple buffers reference the same record
- > Just a heads-up: in FWD, the newly created records are flushed to the database if all indexes are validated (check ...
- 04:31 AM Bug #10542: Write trigger called when multiple buffers reference the same record
- > Then in the main buffer I try to load the second record from book4 table. As you can observe the WRITE is not trigg...
- 04:17 AM Bug #10542: Write trigger called when multiple buffers reference the same record
- I have found the following test case. Please note that I defined on @book4@ table a WRTIE TRIGGER that just message *...
- 03:58 AM Bug #10542 (Test): Write trigger called when multiple buffers reference the same record
- 03:41 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- > Moreover, the results can have a boolean variable which dictates in what mode we are currently in. convertBracket()...
- 01:49 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- If the concern is on the bracket calculation, maybe when commiting a transaction we can convert the current bracket t...
09/09/2025
- 06:13 PM Feature #10491: Tool to standardize PG cluster creation
- Roger Borrello wrote:
> I added functionality so that the cluster can be controlled properly with *systemctl*.
>
... - 06:12 PM Feature #10491 (Review): Tool to standardize PG cluster creation
- Usage of @fwd_create_pg_cluster.sh@:...
- 12:54 PM Feature #10491: Tool to standardize PG cluster creation
- Roger Borrello wrote:
> I added functionality so that the cluster can be controlled properly with *systemctl*.
>
... - 10:25 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- > If as in your example, the requested row is 1.000.000 and we iterate with brackets of 100 in size, it will take som...
- 08:27 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- > For 1e9 - 1, if the forcedMaxExponent is 2, then the right bracket is around (1e9 - 100) and offset is 99 (size is...
- 07:22 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- Review of 9383a:
* @bracket == forcedMaxExponent + 1@ I don't think this is a hard constraint. I think @bracket > ... - 04:25 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- Also commited rev. 16141 to remove some unnecessary history entries.
- 04:14 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- Alex: Please review *9383a/rev. 16138-16140*.
- 07:28 AM Bug #10480: Wrong sort criteria in FOR LAST when index has desc component
- Huh, this will be tough. Having it in trunk will affect at least one production customer. We will have a meeting tomo...
- 07:26 AM Bug #10480: Wrong sort criteria in FOR LAST when index has desc component
- Alexandru Lungu wrote:
> Will this change be compatible with current database, right? But it will simply be slower.
... - 07:24 AM Bug #10480: Wrong sort criteria in FOR LAST when index has desc component
- Got it. Then I think 10380a integration in trunk will be highly dependent upon customer's schedule to update the data...
- 06:54 AM Bug #10480: Wrong sort criteria in FOR LAST when index has desc component
- Alexandru Lungu wrote:
> Did this happen only with run-time testing? The fix only include DDL changes ... were the... - 06:53 AM Bug #10480 (Internal Test): Wrong sort criteria in FOR LAST when index has desc component
- I am OK with the changes.
> Testing of all customer applications has passed with 10480a.
Did this happen only w... - 05:51 AM Bug #10480: Wrong sort criteria in FOR LAST when index has desc component
- Testing of all customer applications has passed with 10480a.
- 07:25 AM Bug #9016: Improve performance in FQLPreprocessor by using astCache
- All regression tests passed, *9016a* can be merged.
- 07:08 AM Feature #6720: lazy hydration
- Alexandru Lungu wrote:
> > Well, I don't think lazy hydration really avoids creating BDT objects. Lazy hydration jus... - 07:04 AM Feature #6720: lazy hydration
- > Well, I don't think lazy hydration really avoids creating BDT objects. Lazy hydration just populates the data array...
- 03:04 AM Feature #6720: lazy hydration
- Greg Shah wrote:
> In these tests you aren't measuring the cost of creating the BDT values. That tends to be expens... - 04:43 AM Bug #10385 (Internal Test): Incorrect reset of the cursor cache in Reposition
- * Check javadoc: @If position = -1, this means that a operation was triggered by REPOSITION-BY-ID statement.@ this sh...
09/08/2025
- 07:29 PM Feature #10491: Tool to standardize PG cluster creation
- I added functionality so that the cluster can be controlled properly with *systemctl*.
*TBD:* In order to control... - 10:57 AM Feature #6720: lazy hydration
- In these tests you aren't measuring the cost of creating the BDT values. That tends to be expensive.
- 10:44 AM Feature #6720: lazy hydration
- Based on the previous note, it seemed that hydrating a record from H2 would be slower than a persistent one. So, I we...
- 04:54 AM Feature #6720: lazy hydration
- I have analysed some performance snapshot of 2 large customer applications that use different DBMS and discovered som...
- 08:15 AM Bug #10385: Incorrect reset of the cursor cache in Reposition
- Alexandru Lungu wrote:
> Review of 10385a:
>
> * Mind that @cursor.@ is viable is cursor is not null (i.e. the qu... - 06:59 AM Bug #10385: Incorrect reset of the cursor cache in Reposition
- Review of 10385a:
* Mind that @cursor.@ is viable is cursor is not null (i.e. the query is scrolling). If the quer... - 02:04 AM Bug #10526 (Review): Progressive results don't get invalidated when buffer-copy is performed
- Committed on 10526a, rev. 16148.
- 01:47 AM Bug #10526 (WIP): Progressive results don't get invalidated when buffer-copy is performed
- I have the following test case:...
- 01:37 AM Bug #10526 (Closed): Progressive results don't get invalidated when buffer-copy is performed
09/05/2025
- 11:21 AM Feature #9542: finish ORIGIN-HANDLE ProDataSet attribute
- The implementations for these two APIs have 2 years now and they are unchanged ever since. I think we should consider...
- 09:34 AM Feature #6720: lazy hydration
- Update on the current status:
* I have added the implicit hydration of fields from unique indexes proposed by Alex i... - 06:53 AM Bug #10385: Incorrect reset of the cursor cache in Reposition
- Alexandru Lungu wrote:
> Hmm, you are right. But this should still hold for Locator, right? So @trimToTableCount@ sh... - 06:26 AM Bug #10385: Incorrect reset of the cursor cache in Reposition
- > Doesn't DBUtils.trimToTableCount method trim the ids array only when the array size is bigger then query.getTableCo...
- 06:03 AM Feature #9543: implement missing BUFFER attributes
- Eric Faulhaber wrote:
> Is there anything left to do on this task, or can we close it?
@CAN-READ@ runtime support... - 05:44 AM Bug #10480: Wrong sort criteria in FOR LAST when index has desc component
- Added @tests/table/index/TestSuite.cls@ unit tests.
From my observation, I noticed that @recid desc@ is used only ...
09/04/2025
- 02:47 PM Feature #9543: implement missing BUFFER attributes
- Is there anything left to do on this task, or can we close it?
- 02:41 PM Feature #9542: finish ORIGIN-HANDLE ProDataSet attribute
- Ovidiu, the gap markings for @prog.kw_first_bu@ and @prog.kw_first_qr@ both have the comment "not heavily tested". Do...
- 09:06 AM Bug #10385: Incorrect reset of the cursor cache in Reposition
- Alexandru Lungu wrote:
> Review of 10385a:
>
Committed changes to handle review issues on rev. 16094.
> * In... - 08:20 AM Bug #10385: Incorrect reset of the cursor cache in Reposition
- Review of 10385a:
* Please make the Locator immutable as it will be easier to keep track of its data without being... - 03:05 AM Bug #10385 (Review): Incorrect reset of the cursor cache in Reposition
- I tried removing the following code in @CompoundQuery.retrieveImpl@:...
- 08:48 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- > Also, since messing up with the size of the session cache is not possible, what if we would detect this one-by-one ...
- 08:21 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- > So, technically, it is right to cache records after commit only if it fits in this 1024 limit. Otherwise, with high...
- 07:50 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- > I was wondering, if we save so many records on a transaction commit, couldn't we pick it up from results (as we do ...
- 07:34 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- > What are the sizes of brackets to be cached when COMMIT occurs? I am wondering if we reach brackets of size 1.000 (...
- 05:01 AM Support #6709: track nested FIND inside a related FOR loop
- Rebased *6709a* to latest *trunk/16145*, the branch is now at revision *16152*.
- 02:55 AM Bug #7793: incremental conversion with deleted table from .df
- The following should be tested:
# Conversion test, the .df should contain an additional table from the start.
# Inc... - 09:26 PM Feature #10491: Tool to standardize PG cluster creation
- Revision 85 of the container project contains updates in preparation for PowerShell support. I broke a portion of the...
09/03/2025
- 10:28 AM Bug #7793 (Internal Test): incremental conversion with deleted table from .df
- Code Review Task Branch 6083a Revisions 16130 and 16131
The changes are good. - 07:09 AM Bug #7793: incremental conversion with deleted table from .df
- Fixed a bug where the md5 field was initialized to null instead of filename: *6083a/16131*.
- 05:51 AM Bug #7793: incremental conversion with deleted table from .df
- I committed *6083a/16130* to address the #7793-28 review.
- 08:13 AM Bug #10390: FIND FIRST buffer field change does not propagate into the next FIRST FIRST statements.
- Because @persistence.load@ (@Session.getImpl@) returns the cached version of the @dmo@. The cached version of the @dm...
- 06:56 AM Bug #10390: FIND FIRST buffer field change does not propagate into the next FIRST FIRST statements.
- > In this form, that third FQL statement seems valid to me and is normal to return a record from database, since the ...
- 07:45 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- PS, the code is:
> dmo.updateState(null, TRACKED, false);
So after committing, the DMOs are *no longer tracked*, ... - 07:42 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- > By catching all the rows from the current bracket + what the called sub-procedure catches, the next record from the...
- 03:35 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- Increasing the lenient threshold does not solve #10172. Although all record properties are now cached, the problem st...
- 04:24 AM Feature #10436: Detect Sequential Data Access and Prefetch Records from the Database
- > Can it be used to cache records in advance?
This is exactly the point. But @AdaptiveFind@ is used when there is ... - 02:26 AM Feature #10436: Detect Sequential Data Access and Prefetch Records from the Database
- Alexandru Lungu wrote:
> Do you refer to patterns like the one in #10436-3 where you have a nested find?
Yes.
> @A... - 02:34 AM Bug #10385: Incorrect reset of the cursor cache in Reposition
- *Question*, when a call to @Cursor.getResult@ is made with the cursor positioned between the rows (lets say at @posit...
09/02/2025
- 03:55 PM Bug #7793: incremental conversion with deleted table from .df
- Code Review Task Branch 6083a Revisions 16127 and 16128
Overall, it looks good.
1. In @getPathToConversionFolde... - 08:21 AM Bug #7793: incremental conversion with deleted table from .df
- Made a fix in *6083a/16129* for the issue mentioned in #7793-26, the DMO will also be deleted from the registry.
- 08:06 AM Bug #7793: incremental conversion with deleted table from .df
- There is an issue where the table should also be deleted from the registry.xml file. At a closer inspection I've foun...
- 07:25 AM Bug #7793 (Review): incremental conversion with deleted table from .df
- I committed *6083a/16128*. Added the changes mentioned in #7793-24.
Greg/Constantin, please review. - 06:34 AM Bug #7793: incremental conversion with deleted table from .df
- I finally got something, the implementation works like this:
* In @ConversionData.java@, the @table_signature@ will ... - 03:34 PM Feature #10491: Tool to standardize PG cluster creation
- Greg Shah wrote:
> > From this, I gather that *md5* was the preferred authorization method at the time of writing. A... - 08:33 AM Feature #10491: Tool to standardize PG cluster creation
- > It's difficult to tell how any other projects create their clusters, since it isn't part of any current scripting. ...
- 09:11 AM Bug #10390: FIND FIRST buffer field change does not propagate into the next FIRST FIRST statements.
- I have checked the bundle and the results when @FIND FIRST@ is used.
When @activeBundleKey@ is first, the old record... - 03:29 AM Bug #10390: FIND FIRST buffer field change does not propagate into the next FIRST FIRST statements.
- The full schema for @adaptivept9@ (taken from testcases project) is:...
- 03:24 AM Bug #10390 (WIP): FIND FIRST buffer field change does not propagate into the next FIRST FIRST sta...
- > on processDirtyResults, the useDirtyDMO is already set to true and there are no changes required.
Right; this is... - 02:41 AM Bug #10390 (Review): FIND FIRST buffer field change does not propagate into the next FIRST FIRST ...
- Committed revision *16103* on task branch *10390a*:
- Addressed code review #10390-17. - 02:28 AM Bug #10390: FIND FIRST buffer field change does not propagate into the next FIRST FIRST statements.
- Response to code review #10390-17:
* the @if (hasEnteredIteration)@ conditional from @RAQ.executeImpl@ was moved bec... - 04:23 AM Bug #10480: Wrong sort criteria in FOR LAST when index has desc component
- Review of 10480a:
* I am OK with the technical approach.
* However, there are several places where @SortCriterion... - 03:12 AM Bug #10480 (Review): Wrong sort criteria in FOR LAST when index has desc component
- 03:12 AM Bug #10480: Wrong sort criteria in FOR LAST when index has desc component
- I have encountered this case in a regression tests, only there @find prev tt1 use-index desc_idx no-lock no-error@ qu...
09/01/2025
- 04:25 PM Bug #10480: Wrong sort criteria in FOR LAST when index has desc component
- Alexandru Lungu wrote:
> Ovidiu, do you have a feedback for this? I am concerned that we might miss something.
I ... - 08:54 AM Bug #10480: Wrong sort criteria in FOR LAST when index has desc component
- There is a regression in Chui regression tests project. In the current implementation, @recid asc@ is added to the @s...
- 02:43 PM Bug #7793: incremental conversion with deleted table from .df
- Greg Shah wrote:
> The idea here is about cases where an output artifact is deleted but the source artifact exists. ... - 08:45 AM Bug #7793: incremental conversion with deleted table from .df
- > > * Reconvert any source artifact whose output artifact has been deleted.
> I don't really understand the idea her... - 06:05 AM Bug #7793: incremental conversion with deleted table from .df
- Greg Shah wrote:
> If possible, try not to make the changes for #7180 more difficult.
>
> It also seems like a po... - 05:52 AM Bug #7793: incremental conversion with deleted table from .df
- For #6738, I looked into the code and found @JavaPatternWorker$WorkArea.pfiles@, this helps us to track the persisted...
- 11:51 AM Feature #10491: Tool to standardize PG cluster creation
- Greg Shah wrote:
> I thought we had automated the cluster initialization. The fact that we haven't is a problem for... - 10:17 AM Bug #10385: Incorrect reset of the cursor cache in Reposition
- Experimented a bit with the query a scrolling query....
- 10:00 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- The issue in #10172 is not that the record is not inside the cache, but rather that its data was not selected. In gen...
- 08:42 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- With 9383a I get around 30k calls for the scenario from #10172 comparative with 34-35k calls with trunk. The reason f...
- 06:08 AM Feature #6457: finish COPY-LOB support
- Constantin Asofiei wrote:
> * @longchar.write@ - what if the existing longchar instance already has the codepage s... - 06:00 AM Feature #6457: finish COPY-LOB support
- Review of 6457a rev 16071:
* @block_properties.rules@ has the XML prolog removed.
* @LobCopy@ - no history entry
*...
08/29/2025
- 12:16 PM Feature #10491: Tool to standardize PG cluster creation
- I am not suggesting that we expand use of @build_db.xml@. The opposite, I want everything in there to be using tools...
- 11:49 AM Feature #10491: Tool to standardize PG cluster creation
- Greg,
The @build_db.xml@ might not be the best place for configuring the cluster. This is a one-time operation (only... - 09:10 AM Bug #7793: incremental conversion with deleted table from .df
- It is fine to store at any point in the process, late or early, it should not matter.
- 09:08 AM Bug #7793: incremental conversion with deleted table from .df
- We'd have to make a difference between code and schema artifacts, JavaPatternWorker.createJavaFile() is used for both...
- 08:59 AM Bug #7793: incremental conversion with deleted table from .df
- If possible, try not to make the changes for #7180 more difficult.
It also seems like a potentially good idea to s... - 08:42 AM Bug #7793: incremental conversion with deleted table from .df
- From the looks of it, I will need to load hotel.p2o which can give me access to the "path" annotation (com/goldencode...
- 07:20 AM Bug #7793: incremental conversion with deleted table from .df
- Alexandru told me that import.sh is able to determine the DMO, I'll investigate and check if this can be of help.
- 06:59 AM Bug #7793: incremental conversion with deleted table from .df
- The dmo file name is build in java_dmo.xml and I can't build the file name of a dmo that doesn't exist. The only opti...
- 06:09 AM Bug #7793: incremental conversion with deleted table from .df
- I tried to look into @DatabaseManager.getDatabaseDMOs()@ and @DatabaseManager.getDatabaseTables()@, but the issue wit...
- 09:01 AM Bug #10483: memory leak in BufferManager.openBuffers
- > The protection ensures only for this specific case.
I understand. But should we expand this to be unconditional... - 08:46 AM Bug #10483: memory leak in BufferManager.openBuffers
- Greg Shah wrote:
> Code Review Task Branch 10483a Revision 16137 and 16138
>
> For @RB.openScope()@, what are 4GL... - 08:41 AM Bug #10483: memory leak in BufferManager.openBuffers
- Code Review Task Branch 10483a Revision 16137 and 16138
For @RB.openScope()@, what are 4GL code examples that caus... - 06:01 AM Bug #10455 (Review): Persistent table CAN-FIND FIRST issue
- 06:00 AM Bug #10455: Persistent table CAN-FIND FIRST issue
- Committed revision *16127* on task branch *10455a*:
- Avoid calling validation multiple times in the nested function... - 03:55 AM Bug #10455 (WIP): Persistent table CAN-FIND FIRST issue
- Review of 10455a:
* I am very OK with the logic being moved to @BlockManager.functionBlock@.
* I am still not con... - 03:33 AM Bug #10455: Persistent table CAN-FIND FIRST issue
- Committed revision *16126* on task branch *10455a*:
* Moved validation from @BufferManager@ into @BlockManager.funct... - 02:44 AM Bug #10455: Persistent table CAN-FIND FIRST issue
- The property block case works just fine, but the problem is that when there is no buffer usage into the the called fu...
- 05:27 AM Bug #10385: Incorrect reset of the cursor cache in Reposition
- Alexandru Lungu wrote:
> Ah, I see. @CompoundQuery@ does a NEXT and forces its AQ to load that second row, but AQ... - 05:24 AM Bug #10385: Incorrect reset of the cursor cache in Reposition
- > Suppose I have in cursor [1432, 1432], cursor is set on the second element. After the execution of loadByValues and...
- 04:10 AM Bug #10385: Incorrect reset of the cursor cache in Reposition
- Alexandru Lungu wrote:
> Exactly. If the first component (EACH) has a cursor with ids [1, 2, 3], then @loadByValue... - 03:35 AM Bug #10385 (WIP): Incorrect reset of the cursor cache in Reposition
- > repositionByID is performed only in certain cases, added additional reposition parameter to loadByValues and load m...
- 01:58 AM Bug #10385: Incorrect reset of the cursor cache in Reposition
- Committed on 10385a, rev. 16091.
@repositionByID@ is performed only in certain cases, added additional @reposition... - 12:42 AM Bug #10385: Incorrect reset of the cursor cache in Reposition
- Alexandru Lungu wrote:
> * I don't think the changes are right (or maybe I am misinterpreting something). The @repoC... - 04:55 AM Bug #10390 (WIP): FIND FIRST buffer field change does not propagate into the next FIRST FIRST sta...
- I am not sure the changes in 10390a are right because:
* moving the @if (hasEnteredIteration)@ after means that we...
08/28/2025
- 02:57 PM Feature #10491: Tool to standardize PG cluster creation
- This must be able to fully replace the cluster initialization in @build_db.xml@. In other words, we will eliminate t...
- 02:53 PM Feature #10491: Tool to standardize PG cluster creation
- > Should I leave it like that, or allow each current line to have the specified authorization method, instead of the ...
- 12:18 PM Feature #10491: Tool to standardize PG cluster creation
- Added watchers.
- 12:17 PM Feature #10491: Tool to standardize PG cluster creation
- With respect to @postgresql.conf@, our current Docker implementation makes the below changes, which essentially uncom...
- 10:35 AM Feature #10491 (WIP): Tool to standardize PG cluster creation
- Right now the attached is within the @container@ project, but needs to be moved to a FWD branch in the @./tools/scrip...
- 10:32 AM Feature #10491: Tool to standardize PG cluster creation
- We need a tool to standardize the method by which a PostgreSQL cluster is created. It needs to be able to function bo...
- 09:05 AM Feature #10491 (Review): Tool to standardize PG cluster creation
- 10:32 AM Bug #10483 (Review): memory leak in BufferManager.openBuffers
- Actually, the memory leak was from a case where a buffer from a super-class is opened (in the pseudo-execute method f...
- 09:15 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- Committed #9383-17 to *9383a/16139*. Made transactionCommitting() default.
- 09:09 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- You can do this:...
- 09:04 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- Danut, @transactionCommiting@ is not implemented as a no-op in all @Results@ classes after the rebase:...
- 08:49 AM Bug #9383: Cache only the current delegate on transaction commit if a ProgressiveResults is used
- Rebased *9383a* to latest *trunk/16136*, the branch is now at revision *16138*.
- 09:07 AM Bug #10455: Persistent table CAN-FIND FIRST issue
- The changes are reverted to the state that was before @BATCH@ mode.
The synchronization does not happen when the val... - 06:53 AM Bug #10455: Persistent table CAN-FIND FIRST issue
- Review of 10455a:
* I would like to defer the review of exception handling to Constantin. To me it looks OK, but I a... - 06:39 AM Bug #10455 (Review): Persistent table CAN-FIND FIRST issue
- Committed revision *16125* on task branch *10455a*:
- Added validation when a function is called in batch assignment... - 03:33 AM Bug #10455: Persistent table CAN-FIND FIRST issue
- Thanks for code review!
I have started working on this task branch, but I think that adding the validation into th... - 07:22 AM Bug #7793: incremental conversion with deleted table from .df
- I like the approach. You can put the changes into 6083a.
- 06:54 AM Bug #7793: incremental conversion with deleted table from .df
- 6083a does give me a way to determine the deleted tables, the only problem is getting the *.java and *.java.jast file...
- 05:45 AM Bug #7793: incremental conversion with deleted table from .df
- I tested hotel using two persistent tables (pt1 and pt2), after removing the pt2 table I am still left with those two...
- 03:22 AM Bug #7793 (WIP): incremental conversion with deleted table from .df
- I'll pick this up since I worked on #6083.
- 06:42 AM Feature #6720: lazy hydration
- > The root cause is the fallback to Loader which causes in retrieving a newer state of the record than we would have ...
- 06:27 AM Feature #6720: lazy hydration
- I have good news and bad news:))
I have tested the fwd tests and unit tests of another large customer application ... - 06:28 AM Bug #10385: Incorrect reset of the cursor cache in Reposition
- Alexandru Lungu wrote:
> > Assignee set to Alexandru Lungu
>
> Constantin, shall I pick this up or was it a mista... - 06:27 AM Bug #10385: Incorrect reset of the cursor cache in Reposition
- > Assignee set to Alexandru Lungu
Constantin, shall I pick this up or was it a mistake changing the Assignee? - 06:26 AM Bug #10385: Incorrect reset of the cursor cache in Reposition
- Eduard,
> 3) qh:get-first() find the record with recid 1432 and updated index field. In Cursor.results is added anot... - 03:18 AM Bug #10385: Incorrect reset of the cursor cache in Reposition
- Alex, please review this. To me the change makes sense.
- 06:13 AM Bug #10480: Wrong sort criteria in FOR LAST when index has desc component
- > do you remember why in SortCriterion.parse, when adding recid to the sort criteria an asc/desc is gotten from the l...
- 06:12 AM Bug #10480 (Internal Test): Wrong sort criteria in FOR LAST when index has desc component
- Is the following a reasonable example to prove the issue (both temporary and persistent tables)?...
- 02:38 AM Bug #10480 (Review): Wrong sort criteria in FOR LAST when index has desc component
- 02:37 AM Bug #10480 (WIP): Wrong sort criteria in FOR LAST when index has desc component
- Committed on 10480a, revision 16133.
Excluded descending order from recid component from DDL and FQL generation. - 03:40 AM Bug #10398 (Test): Incorrect base data type used in buffer dereference
- 10398a was merged to trunk and archived.
- 03:22 AM Bug #10398 (Merge Pending): Incorrect base data type used in buffer dereference
- Please merge to trunk now.
- 03:19 AM Bug #10390: FIND FIRST buffer field change does not propagate into the next FIRST FIRST statements.
- Alex, please review this.
08/27/2025
- 11:28 AM Bug #10483: memory leak in BufferManager.openBuffers
- In @BufferManager.bufferInitialized@, the @buffer.activeScopeDepth@ is 0-based; this code:...
- 11:14 AM Bug #10483 (WIP): memory leak in BufferManager.openBuffers
- 09:12 AM Bug #10480: Wrong sort criteria in FOR LAST when index has desc component
- > Do you remember why in SortCriterion.parse, when adding recid to the sort criteria an asc/desc is gotten from the l...
- 08:56 AM Bug #10480: Wrong sort criteria in FOR LAST when index has desc component
- Unfortunately I didn't find any testcases related to this.
- 08:52 AM Bug #10480: Wrong sort criteria in FOR LAST when index has desc component
- The only places where I could find @(pKeyAscend ? "asc" : "desc")@ mentioned is #7414-14 and #1666-15.
Ovidiu wrot... - 07:41 AM Bug #10480: Wrong sort criteria in FOR LAST when index has desc component
- > Sorry Tomasz, I saw that you made the last change in this area, but the part of the code of interest is pretty old ...
- 07:35 AM Bug #10480: Wrong sort criteria in FOR LAST when index has desc component
- Eduard Soltan wrote:
> Tomasz,
>
> Do you remember why in @SortCriterion.parse@, when adding @recid@ to the sort ... - 07:18 AM Bug #10480: Wrong sort criteria in FOR LAST when index has desc component
- Tomasz,
Do you remember why in @SortCriterion.parse@, when adding @recid@ to the sort criteria an @asc/desc@ is go... - 05:52 AM Bug #10480: Wrong sort criteria in FOR LAST when index has desc component
- ...
- 05:46 AM Bug #10480 (Test): Wrong sort criteria in FOR LAST when index has desc component
- 08:44 AM Bug #10455 (WIP): Persistent table CAN-FIND FIRST issue
- I made some experiments my own and reached the same conclusion as yours. Using function invocations inside the ASSIGN...
- 08:26 AM Feature #6720: lazy hydration
- While investigating the FWD tests of a large customer applications, I came across some problems and fixed them. @6720...
- 04:45 AM Bug #10479: Deleted record is added to session cache in ProgressiveResults.getResults
- When a new bracket is processed in @ProgressiveResults.getResults@, this code is executed:...
- 04:30 AM Bug #10479 (New): Deleted record is added to session cache in ProgressiveResults.getResults
08/25/2025
- 01:45 PM Bug #10470 (WIP): Wrong order of records fetching when index modification
- ...
- 01:39 PM Bug #10470 (Rejected): Wrong order of records fetching when index modification
- 10:33 AM Support #10420: Refactoring DMO interface layers
- Good additions, Alex!
- 08:08 AM Support #10420: Refactoring DMO interface layers
- I like #10420-3! I would like to extend upon the Issues section with a question:
* are there limits on Java file/cla... - 08:28 AM Bug #9016 (Internal Test): Improve performance in FQLPreprocessor by using astCache
- I am ok with 9016a. Please proceed with testing.
- 06:52 AM Bug #9493: Inline word index CTE for trivial clauses
- Alexandru Lungu wrote:
> Stefanel, please describe here the optimization in #10431-12 here. We may want to implement... - 06:38 AM Bug #9493: Inline word index CTE for trivial clauses
- Stefanel, please describe here the optimization in #10431-12 here. We may want to implement such optimization directl...
- 06:45 AM Feature #10436: Detect Sequential Data Access and Prefetch Records from the Database
- > Detect Sequential Data Access and Prefetch Records from the Database
Arthur, can you provide a 4GL code that wou... - 01:47 AM Bug #10455: Persistent table CAN-FIND FIRST issue
- ChUI regression testing passed with the current changes.
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...
- 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...
Also available in: Atom