Project

General

Profile

Activity

From 11/05/2025 to 12/04/2025

12/04/2025

05:35 PM Bug #10937 (Review): fwd-h2 'killedMultiplexesCleanup' must not abend if the batch is not empty
I rebased and committed the final changes to FWD/10937a and H2/10937a_h2 branches. Now the testcases seem to work as ... Ovidiu Maxiniuc
08:30 AM Feature #4369 (WIP): implement stateless FWD server clustering
Greg Shah
07:52 AM Bug #9633 (Review): bulk delete for permanent tables
Stefanel Pezamosca
07:50 AM Bug #9633: bulk delete for permanent tables
I rebased 9633a to trunk revision 16302.
I have committed to *9633a revision 16305*:
* Reverted @ignore_scope...
Stefanel Pezamosca

12/03/2025

11:02 AM Feature #9577: persist the artifacts from dynamic query parsing/conversion (including the JAST) a...
In addition, from today discussion, we would want to add a 'quality' property: save only converted queries which have... Ovidiu Maxiniuc
08:29 AM Bug #10962: Optimized multi-table compound components are not invalidated
FYI, there is @CQ.stateChanged@ that sets @useSnapshot@, @initReferenceRowSupport@ and @SnapshotParameterFilter@ to b... Alexandru Lungu
08:17 AM Bug #10962: Optimized multi-table compound components are not invalidated
I went to ~rev. 15550 but this is still reproducible. I still tend to think this is a regression and this worked at s... Alexandru Lungu
07:35 AM Bug #10962: Optimized multi-table compound components are not invalidated
+ Stefanel Alexandru Lungu
07:34 AM Bug #10962: Optimized multi-table compound components are not invalidated
It is not enough apparently. Even if I force the multi-table AQ to invalidate, it will get to the absolute first row.... Alexandru Lungu
07:17 AM Bug #10962: Optimized multi-table compound components are not invalidated
There is an issue with the invalidation of @AdaptiveQuery@ instances that are generated by the optimizer. It seems li... Alexandru Lungu
07:10 AM Bug #10962 (WIP): Optimized multi-table compound components are not invalidated
Alexandru Lungu
07:16 AM Bug #10956: Wrong primary index selection on FOR EACH table
Teodor Gorghe wrote:
> Created task branch *10956a*
>
> Committed revision *16299* on task branch *10956a*:
> - ...
Constantin Asofiei
04:39 AM Bug #10956 (Review): Wrong primary index selection on FOR EACH table
Created task branch *10956a*
Committed revision *16299* on task branch *10956a*:
- Don't copy the @KW_PRIMARY@ pr...
Teodor Gorghe
07:07 AM Feature #10959: Improve performance of dynamic queries
I think the most part of the queries which causes the cache to fill are more simple, like:... Ovidiu Maxiniuc
07:02 AM Feature #10959: Improve performance of dynamic queries
> How do you know where pred has been built so that we use this special structure instead of concatenating? That's wh... Alexandru Lungu
06:35 AM Feature #10959: Improve performance of dynamic queries
Some class has this method:... Constantin Asofiei
06:24 AM Feature #10959: Improve performance of dynamic queries
... Alexandru Lungu
06:19 AM Feature #10959: Improve performance of dynamic queries
Alexandru Lungu wrote:
> In my idea, the key would look like: @for each tt where tt.f1 = <token> and tt.f2 = <token>...
Constantin Asofiei
06:12 AM Feature #10959: Improve performance of dynamic queries
> An idea is to have a minimal parser which has two purposes:
This is why I think we can rely on the converted co...
Alexandru Lungu
05:57 AM Feature #10959: Improve performance of dynamic queries
Alex, whatever we do, the predicate string still needs to be parsed. An idea is to have a minimal parser which has t... Constantin Asofiei
05:34 AM Feature #10959: Improve performance of dynamic queries
Ovidiu, there are also some patterns quite often encountered, like:
* @hq:query-prepare(substitute("for each tt wh...
Alexandru Lungu

12/02/2025

03:48 PM Feature #10959: Improve performance of dynamic queries
Recent work performed by FWD revealed a flaw in the implementation of 1st level cache of the dynamic query parser. Be... Ovidiu Maxiniuc
03:24 PM Feature #10959 (New): Improve performance of dynamic queries
Ovidiu Maxiniuc
07:47 AM Bug #10937: fwd-h2 'killedMultiplexesCleanup' must not abend if the batch is not empty
I addressed the no-undo issue on @doCloseMultiplexScope@. It seems to eliminate the crash, leaving the table in a usa... Ovidiu Maxiniuc
07:23 AM Feature #4369: implement stateless FWD server clustering
Greg Shah wrote:
> Please still work to put as much of the Geode-specific logic into a clustering package. If possi...
Andrei Plugaru
07:17 AM Feature #4369: implement stateless FWD server clustering
I understand that the logic in various places will need to be changed to be compatible with a synchronization approac... Greg Shah
06:08 AM Feature #4369: implement stateless FWD server clustering
The core data structures we need are mainly already implemented by Geode. They have @Region@, which is basically a di... Andrei Plugaru
06:59 AM Bug #10956 (WIP): Wrong primary index selection on FOR EACH table
I will assign this to me and I will work on this in parallel. Teodor Gorghe
06:50 AM Bug #10956: Wrong primary index selection on FOR EACH table
OK, so this is a conversion issue: if the model table has a primary index, and the definition also has one, then the ... Constantin Asofiei
06:38 AM Bug #10956: Wrong primary index selection on FOR EACH table
Result of @WRITE-XMLSCHEMA@:
* 4GL...
Teodor Gorghe
06:29 AM Bug #10956: Wrong primary index selection on FOR EACH table
Teodor, the goal of WRITE-XML with schema included is to see which indexes are reported. Please post the .xml file h... Constantin Asofiei
06:23 AM Bug #10956: Wrong primary index selection on FOR EACH table
Confirmed:
* the order of WRITE-JSON/WRITE-XML is the same as for the @FOR EACH@ execution:
WRITE-JSON and WRITE-...
Teodor Gorghe
06:12 AM Bug #10956: Wrong primary index selection on FOR EACH table
The customer uses @WRITE-JSON@, which the order is not the same, because of this issue.
I am testing with @WRITE-J...
Teodor Gorghe
06:10 AM Bug #10956: Wrong primary index selection on FOR EACH table
Teodor, do a @WRITE-XML@ on tt2, with schema included, and see what indexes are reported there. Constantin Asofiei
05:25 AM Bug #10956: Wrong primary index selection on FOR EACH table
Suppose we have the following simple case:... Teodor Gorghe
05:20 AM Bug #10956 (Closed): Wrong primary index selection on FOR EACH table
Teodor Gorghe

12/01/2025

11:22 AM Feature #4369: implement stateless FWD server clustering
I'll have to think about the pattern a bit more before I discuss that.
I do want us to avoid putting the same Geod...
Greg Shah

11/28/2025

10:10 AM Feature #4369: implement stateless FWD server clustering
I have been lately focused on implementing refactoring the @LockStatus/TraceLockStatus@ classes in order to be able t... Andrei Plugaru
09:29 AM Support #10664: Develop a multi session test suite in harness
Artur Școlnic wrote:
> Tomasz Domin wrote:
> > I fully agree, I was just wondering if I can help with tooling modif...
Tomasz Domin
08:35 AM Support #10664: Develop a multi session test suite in harness
Tomasz Domin wrote:
> I fully agree, I was just wondering if I can help with tooling modification.
Since you brou...
Artur Școlnic
08:27 AM Support #10664: Develop a multi session test suite in harness
Artur Școlnic wrote:
> We know there are failures, hence the skewed results, we simply need to work on the issues an...
Tomasz Domin
08:26 AM Support #10664: Develop a multi session test suite in harness
We know there are failures, hence the skewed results, we simply need to work on the issues and bring the success rate... Artur Școlnic
08:18 AM Support #10664: Develop a multi session test suite in harness
Artur Școlnic wrote:
> I finished writing the locking tests, the results are:
> OE: 1610/1610
> FWD: 411/1610
>...
Tomasz Domin
05:19 AM Support #10664 (Review): Develop a multi session test suite in harness
I finished writing the locking tests, the results are:
OE: 1610/1610
FWD: 411/1610
There are two main reasons wh...
Artur Școlnic
03:47 AM Bug #10455: Persistent table CAN-FIND FIRST issue
Committed revision *16298* on task branch *10455b*:
- Set the batch mode validation to false when it is in bulk copy.
Teodor Gorghe
01:49 AM Bug #10455: Persistent table CAN-FIND FIRST issue
Committed revision *16297* on task branch *10455b*:
- Changed reportBatchValidationException to throw the error.
Teodor Gorghe
01:43 AM Bug #10455: Persistent table CAN-FIND FIRST issue
I am thinking on something else:
* when the assigned buffer is the destination buffer, or something else, a variable...
Teodor Gorghe
01:05 AM Bug #10455: Persistent table CAN-FIND FIRST issue
Constantin Asofiei wrote:
> Also, does the original test scenario still work?
Yes, they still work, I have tested...
Teodor Gorghe

11/27/2025

12:09 PM Bug #10455: Persistent table CAN-FIND FIRST issue
For show vs throwError I think there are two cases:
* if validation fails and LVALUE is the buffer (or field?) which...
Constantin Asofiei
10:50 AM Bug #10455 (Review): Persistent table CAN-FIND FIRST issue
Committed revision *16296* on task branch *10455b*:
- Fixed BUFFER-COPY BATCH ASSIGN when a function call is the fir...
Teodor Gorghe
09:50 AM Bug #10455: Persistent table CAN-FIND FIRST issue
I have also tried this:... Teodor Gorghe
09:38 AM Bug #10455: Persistent table CAN-FIND FIRST issue
Hm... you are right, this works. But, how can we differentiate that we are in an assignment for a target buffer fiel... Constantin Asofiei
09:33 AM Bug #10455: Persistent table CAN-FIND FIRST issue
Please try this:... Teodor Gorghe
09:29 AM Bug #10455: Persistent table CAN-FIND FIRST issue
Note that @ErrorManager.recordOrThrowError(newErrorCodes, newErrorMessages, false);@ is called in @RecordBuffer.repor... Constantin Asofiei
09:26 AM Bug #10455: Persistent table CAN-FIND FIRST issue
Teodor, please check with 12.x this test:... Constantin Asofiei
09:01 AM Bug #10455: Persistent table CAN-FIND FIRST issue
Created task branch *10455b*. Teodor Gorghe
09:00 AM Bug #10455 (WIP): Persistent table CAN-FIND FIRST issue
There is a regression regarding this task.
When the @BUFFER-COPY ASSIGN@ on a buffer on the same table with unique f...
Teodor Gorghe
08:08 AM Bug #6834 (Closed): RAQ navigation on records having NULL values on same index components
Dănuț Filimon
08:06 AM Bug #6834: RAQ navigation on records having NULL values on same index components
Cool. Then this can be closed. Ovidiu Maxiniuc
06:25 AM Bug #6834: RAQ navigation on records having NULL values on same index components
This has been fixed in a revision before trunk/16000.
The FWD output of the #6834-3 test is:...
Dănuț Filimon
05:20 AM Bug #10937: fwd-h2 'killedMultiplexesCleanup' must not abend if the batch is not empty
> We can TRUNCATE only if there are separate SQL tables, and we get rid of the MULTIPLEX. Otherwise, we need DELETE .... Alexandru Lungu
05:05 AM Bug #10937: fwd-h2 'killedMultiplexesCleanup' must not abend if the batch is not empty
Alexandru Lungu wrote:
> Mind that this does TRUNCATE AFAIK.
We can TRUNCATE only if there are separate SQL tables,...
Constantin Asofiei
04:51 AM Bug #10937: fwd-h2 'killedMultiplexesCleanup' must not abend if the batch is not empty
> Otherwise, if it proves too difficult to solve/investigate the destructor conundrums, lets work on enhancing the UP... Alexandru Lungu
04:41 AM Feature #9711: collation configuration cleanup
Stefanel Pezamosca wrote:
> If I understand correctly, the goal here is to to eliminate the need for manual configur...
Alexandru Lungu
03:26 AM Feature #9711: collation configuration cleanup
If I understand correctly, the goal here is to to eliminate the need for manual configuration and hard-coded settings... Stefanel Pezamosca

11/26/2025

02:48 PM Bug #10937: fwd-h2 'killedMultiplexesCleanup' must not abend if the batch is not empty
Ovidiu, lets solve the @nonEmptyTableFlags@ issue in this task:
* for NO-UNDO tables, this bitmap will work as is - ...
Constantin Asofiei
08:44 AM Bug #10937 (WIP): fwd-h2 'killedMultiplexesCleanup' must not abend if the batch is not empty
Ovidiu Maxiniuc
08:23 AM Bug #10937: fwd-h2 'killedMultiplexesCleanup' must not abend if the batch is not empty
Or maybe the destructor is deferred till the end of the transaction and we don't see that. Maybe a message after dele... Alexandru Lungu
08:22 AM Bug #10937: fwd-h2 'killedMultiplexesCleanup' must not abend if the batch is not empty
> In the temp-table destroy case, the destructor changes are not rolled back.
So you can create things in the pers...
Alexandru Lungu
08:01 AM Bug #10937: fwd-h2 'killedMultiplexesCleanup' must not abend if the batch is not empty
Alexandru Lungu wrote:
> > So, does an UNDO revert any created records by such destructors?
>
> Huh, interesting...
Constantin Asofiei
05:07 AM Bug #10937: fwd-h2 'killedMultiplexesCleanup' must not abend if the batch is not empty
> I don't see another way than add a NO-UNDO option for the DELETE statement in H2, so that we can do DELETEs which a... Alexandru Lungu

11/25/2025

01:35 PM Bug #10937: fwd-h2 'killedMultiplexesCleanup' must not abend if the batch is not empty
This is related also to the #10833-80 scenario, where it was proved that @nonEmptyTableFlags@ is broken in case of ro... Constantin Asofiei
01:16 PM Bug #10937 (Test): fwd-h2 'killedMultiplexesCleanup' must not abend if the batch is not empty
Constantin Asofiei
06:23 AM Bug #10901 (Review): BEGINS trims the rvalue if the lvalue field is first in an index
Created 10901a from trunk rev 16292. In rev 16293: If in a BEGINS LVALUE is a field part of the index used for sort,... Constantin Asofiei

11/24/2025

09:58 AM Feature #6348: implement support for MariaDB
It should be a different task, please make one in Deployment. Greg Shah
09:49 AM Feature #6348: implement support for MariaDB
Is it fair to continue use of this task for finishing touches on MariaDB? Some things I am considering:
* We have im...
Roger Borrello
06:28 AM Bug #10920: String concatenation doesn't work in WHERE clause for permanent databases
> Is not about a query from FWD, just a direct SELECT I noticed. Yes, RTRIM=TRUE is in the JDBC URL.
Right. The co...
Alexandru Lungu
06:24 AM Bug #10920: String concatenation doesn't work in WHERE clause for permanent databases
Is not about a query from FWD, just a direct SELECT I noticed. Yes, @RTRIM=TRUE@ is in the JDBC URL. Constantin Asofiei
04:31 AM Bug #10920: String concatenation doesn't work in WHERE clause for permanent databases
PS: I see @dialect.addRtrimmedExpression("?", sb);@. This can be wrapped with @dialect.isAutoRtrim@. Alexandru Lungu
04:30 AM Bug #10920: String concatenation doesn't work in WHERE clause for permanent databases
Is @RTRIM=TRUE;@ set? H2 also knows to compare the values of strings with rtrim automatically. Alexandru Lungu
04:15 AM Bug #10920: String concatenation doesn't work in WHERE clause for permanent databases
Alex, as a side note: this query does not return records in H2: @select * from meta_user where userid = rtrim('HOTEL'... Constantin Asofiei
03:35 AM Bug #10920: String concatenation doesn't work in WHERE clause for permanent databases
I am OK with the changes in #10920-3. This piece of code is a backdoor into the persistence and wasn't handled proper... Alexandru Lungu
03:23 AM Bug #10920: String concatenation doesn't work in WHERE clause for permanent databases
This is because of the H2's dialect automatic case-insensitive assumption in @P2JH2Dialect@; I've used a JDBC URL li... Constantin Asofiei

11/23/2025

05:42 AM Bug #10920: String concatenation doesn't work in WHERE clause for permanent databases
I used H2 permanent database. No records are found in FWD.... Stanislav Lomany
05:40 AM Bug #10920 (New): String concatenation doesn't work in WHERE clause for permanent databases
Stanislav Lomany

11/21/2025

09:48 AM Feature #4369: implement stateless FWD server clustering
Greg Shah wrote:
> The tables we could expect to be used frequently are not the same tables that are editable. @_fi...
Eric Faulhaber
08:09 AM Feature #4369: implement stateless FWD server clustering
The tables we could expect to be used frequently are not the same tables that are editable. @_file@, @_field@, @_ind... Greg Shah
06:09 AM Feature #4369: implement stateless FWD server clustering
I am just writing here a discussion that happened in the daily yesterday.
Back when we tested performance for a la...
Alexandru Lungu

11/20/2025

01:55 PM Feature #4369: implement stateless FWD server clustering
> In the end, it all comes down to the number of queries executed for the metadata tables for the current and future ... Greg Shah
12:52 PM Feature #4369: implement stateless FWD server clustering
Today I have made some experiments for understanding the time taken for inserting a large number of records in a meta... Andrei Plugaru

11/19/2025

02:07 PM Feature #4369: implement stateless FWD server clustering
> Over the solution presented by you, this has the advantage that the tables don't need to be recreated before each q... Greg Shah
01:14 PM Feature #4369: implement stateless FWD server clustering
Greg Shah wrote:
> For the tables that need to represent state that can change at runtime, I am suggesting that the ...
Andrei Plugaru
11:02 AM Feature #4369: implement stateless FWD server clustering
> Greg, just to be clear, do you suggest to give up on the H2 metadata tables all together?
No. There is value i...
Greg Shah
06:52 AM Feature #4369: implement stateless FWD server clustering
Greg Shah wrote:
> I repeat my points of #4369-46 and #4369-54. The existing approach to metadata is overcomplicate...
Andrei Plugaru

11/18/2025

05:36 PM Feature #4369: implement stateless FWD server clustering
I repeat my points of #4369-46 and #4369-54. The existing approach to metadata is overcomplicated and causes unneces... Greg Shah
04:52 PM Feature #4369: implement stateless FWD server clustering
Andrei Plugaru wrote:
> [...]
> IMHO, the versioning approach from @UserTableStatUpdater@ and @LockTableUpdater@ is...
Eric Faulhaber
10:32 AM Feature #4369: implement stateless FWD server clustering
In the last note, I forgot to mentioned the new directory configurations introduced in my latest commits. Right under... Andrei Plugaru
07:42 AM Feature #4369: implement stateless FWD server clustering
I have committed @4369a/16232@. I have completed all the java docs, history entries all the file headers on the new f... Andrei Plugaru
11:34 AM Bug #10901: BEGINS trims the rvalue if the lvalue field is first in an index
Actually things are a little more complicated: what matters is that the field is part of the 4GL index associated wit... Constantin Asofiei
09:52 AM Bug #10901: BEGINS trims the rvalue if the lvalue field is first in an index
This test shows that if a field is part of a leading component, then it will trim the rvalue for @BEGINS@:... Constantin Asofiei
09:45 AM Bug #10901 (Closed): BEGINS trims the rvalue if the lvalue field is first in an index
Constantin Asofiei

11/17/2025

04:30 AM Bug #10890: merge-row-changes does not change the before/after image row-state correctly
Another issue is that after @merge-row-changes@, in OE there are scenarios in which the *before image is not deleted*... Artur Școlnic
04:27 AM Bug #10890: merge-row-changes does not change the before/after image row-state correctly
... Artur Școlnic
04:19 AM Bug #10890 (New): merge-row-changes does not change the before/after image row-state correctly
Artur Școlnic

11/15/2025

08:28 AM Feature #4369: implement stateless FWD server clustering
I have mainly finished all the changes necessary in @InMemoryLockManager@ regarding the @.wait()/.notify()@ construct... Andrei Plugaru

11/14/2025

05:56 AM Feature #9711: collation configuration cleanup
Alex, when talking _meta tables, the nuances you mentioned is a bit more complex.
There is some 'persistent' infor...
Ovidiu Maxiniuc
05:33 AM Feature #9711: collation configuration cleanup
> I think we need a way to allow the H2's default collation and ignore completely the embedded-collation for the _tem... Alexandru Lungu
04:58 AM Feature #9711: collation configuration cleanup
I think we need a way to allow the H2's default collation and ignore completely the @embedded-collation@ for the _tem... Constantin Asofiei

11/13/2025

07:44 AM Bug #10385 (WIP): Incorrect reset of the cursor cache in Reposition
I run a large unit test suite and discovered a NPE in @RepositionCache$Node.getRow@, on @rows.floor(position.intValue... Alexandru Lungu
05:52 AM Feature #4369: implement stateless FWD server clustering
> If the requests are stateless, then they should be able to be distributed across the clustered servers without any ... Alexandru Lungu

11/12/2025

10:56 AM Feature #4369: implement stateless FWD server clustering
> if there are 1k requests at a time and 10 servers, it is completely valid to balance 100 across these 10 servers?
...
Greg Shah
10:54 AM Feature #4369: implement stateless FWD server clustering
I don't think we need the @RemoteLockManager@ if we have proper clustering. Greg Shah
09:15 AM Feature #4369: implement stateless FWD server clustering
> Within single-server mode and cluster mode, the server should still handle multiple requests in parallel? I mean, i... Andrei Plugaru
07:59 AM Feature #4369: implement stateless FWD server clustering
Review of 4369a:
h4. Model
* I spot some changes in the synchronization in general and I want to better underst...
Alexandru Lungu

11/10/2025

08:41 AM Feature #4369: implement stateless FWD server clustering
Queuing it up! Alexandru Lungu
08:33 AM Feature #4369 (Review): implement stateless FWD server clustering
Eric/Alex: Please do this first review. Greg Shah
07:35 AM Bug #10838: Unique index violation should be cured even at flush time
Make a @tbl@ persistent table with unique index of (f1, f2).... Alexandru Lungu
07:32 AM Bug #10838 (New): Unique index violation should be cured even at flush time
Alexandru Lungu

11/07/2025

08:46 AM Bug #9950 (Review): Upgrade the metadata schema to a newer version
Constantin Asofiei
08:34 AM Feature #9305: Replace begins with interval based conditional
Please do the tests requested in #9305-25 in 4GL and PG with LIKE / < and > / with BETWEEN. We need to take a decisio... Alexandru Lungu
07:42 AM Feature #9305: Replace begins with interval based conditional
The range check follows the field collation or is byte-by-byte?
If it is after collation, there are some cases like ...
Teodor Gorghe
07:11 AM Feature #9305: Replace begins with interval based conditional
Teodor Gorghe wrote:
> You told yesterday and in #9305-10 that the default database configuration, with @en_us.UTF...
Eduard Soltan
07:01 AM Bug #7999: FWD does not honor FIELDS/EXCEPT at dynamic queries
When the changes from this task are regression tested, please also include the following scenario mentioned in #10763... Lorian Sandu

11/06/2025

04:55 PM Bug #9950: Upgrade the metadata schema to a newer version
I added backward compatibility with projects that have not upgraded from OE 11.6. By default 11.6 is the default meta... Ovidiu Maxiniuc
10:45 AM Feature #4369 (WIP): implement stateless FWD server clustering
*Update on the current status.*
Up until now, I have synchronized the *tracker for records in unique indices* and th...
Andrei Plugaru
05:36 AM Feature #9305: Replace begins with interval based conditional
Alexandru,
You told yesterday and in #9305-10 that the default database configuration, with @en_us.UTF8@ collation, ...
Teodor Gorghe
04:04 AM Bug #10822: Lock is not acquired if the update field value is the same as the current one
If a no-lock is set on a record it cannot be modified, 4GL does not allow any assignment and raises ... Artur Școlnic
03:58 AM Bug #10822 (New): Lock is not acquired if the update field value is the same as the current one
Artur Școlnic
03:56 AM Support #10664: Develop a multi session test suite in harness
I agree, I will open related tasks for every issue found during testing. Artur Școlnic
03:53 AM Support #10664: Develop a multi session test suite in harness
> Alex/Eric can determine if we do this now or if we do this in a separate task.
IMHO, related tasks should be ope...
Alexandru Lungu
02:34 AM Support #10664: Develop a multi session test suite in harness
Artur Școlnic wrote:
> The tests that are not running properly have this pattern:
> [...]
>
> The test relies on...
Greg Shah
02:12 AM Support #10664: Develop a multi session test suite in harness
Razvan pointed out an issue with lock scopes in #10796, @locking@ test suite already includes lock release/downgrade ... Artur Școlnic
 

Also available in: Atom