Project

General

Profile

Activity

From 06/13/2022 to 07/12/2022

07/12/2022

02:38 PM Bug #6591: DMO collisions with converted program/legacy class name or FWD classes
If not too late, I think we can slightly adjust the DMO name using hints. Ovidiu Maxiniuc
07:14 AM Bug #6591 (WIP): DMO collisions with converted program/legacy class name or FWD classes
The the DMO collisions with converted Java class name is already solved by appending the @Program@ suffix (although t... Constantin Asofiei
06:40 AM Bug #6591: DMO collisions with converted program/legacy class name or FWD classes
In 3821c, there was a change which solved a camel-case issue - legacy tables names like @SomeTableName@ were converte... Constantin Asofiei
06:29 AM Bug #6591 (WIP): DMO collisions with converted program/legacy class name or FWD classes
Constantin Asofiei
12:00 PM Feature #6574: auto-detect native UDFs at server startup and install them if missing
Done. Please review.
Thank you.
Igor Skornyakov
09:54 AM Feature #6574: auto-detect native UDFs at server startup and install them if missing
> This makes sense. We could add an @admin_username@ and @admin_password@ in the @.../database/<database_name>/orm/co... Igor Skornyakov
09:53 AM Feature #6574: auto-detect native UDFs at server startup and install them if missing
Igor Skornyakov wrote:
> Another problem is with creation of the @udf@ schema. The @create schema if not exists udf@...
Eric Faulhaber
09:49 AM Feature #6574: auto-detect native UDFs at server startup and install them if missing
Igor Skornyakov wrote:
> There is a problem with "on the fly" creation of native UDFs.
> Many of them a declared as...
Eric Faulhaber
08:14 AM Feature #6574: auto-detect native UDFs at server startup and install them if missing
Another problem is with creation of the @udf@ schema. The @create schema if not exists udf@ statament also can be exe... Igor Skornyakov
07:48 AM Feature #6574: auto-detect native UDFs at server startup and install them if missing
There is a problem with "on the fly" creation of native UDFs.
Many of them a declared as "leakproof" but such UDFs c...
Igor Skornyakov
11:05 AM Feature #6348: implement support for MariaDB
Ovidiu Maxiniuc wrote:
> It has a PL language somewhat similar to PSQL.
I followed the CREATE FUNCTION doc link y...
Eric Faulhaber
09:26 AM Feature #6582 (WIP): implement multi-table AdaptiveQuery
Eric Faulhaber wrote:
> Alexandru, please review the existing @AdaptiveQuery@ implementation and consider how we mig...
Alexandru Lungu
09:24 AM Feature #6582: implement multi-table AdaptiveQuery
Alexandru, please review the existing @AdaptiveQuery@ implementation and consider how we might go about extending/rew... Eric Faulhaber
07:16 AM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
Even if we want to allow for only a subset of the DMOs to get POJOs, we should make it easy to generate POJOs for all... Greg Shah
11:28 PM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
Eric Faulhaber wrote:
> I thought we had discussed not using reflection and instead having default implementations...
Eric Faulhaber
11:24 PM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
Ovidiu Maxiniuc wrote:
> I have implemented the marshalling methods between POJO and DMO. Here are the important hig...
Eric Faulhaber
11:08 PM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
Ovidiu Maxiniuc wrote:
> I added the setters and performed more class polishing, like the initialization of extent f...
Eric Faulhaber
09:14 PM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
I have implemented the marshalling methods between POJO and DMO. Here are the important highlights:
* the @Record@ h...
Ovidiu Maxiniuc

07/11/2022

12:54 PM Feature #6371: implement SAVE CACHE statement
Boris Schegolev wrote:
> As I was writing, Eric added the above specs, answering most of my questions :)
>
> A fe...
Eric Faulhaber
12:06 PM Feature #6371: implement SAVE CACHE statement
As I was writing, Eric added the above specs, answering most of my questions :)
A few points from my side:
# Th...
Boris Schegolev
11:50 AM Feature #6371: implement SAVE CACHE statement
This feature is only for use with specially designated databases, whose schemas are mutable. These are special purpos... Eric Faulhaber
08:33 AM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
> I was thinking of a switch in p2j.cfg.xml for turning their generation on or off (as opposed to individual hints)
...
Greg Shah

07/09/2022

08:01 PM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
Added the change-set. Ovidiu Maxiniuc

07/08/2022

07:47 PM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
I added the setters and performed more class polishing, like the initialization of extent fields as Java arrays of th... Ovidiu Maxiniuc
07:20 AM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
That looks really good!
Perhaps we should consider generating these for every DMO. Is there a reason to limit it ...
Greg Shah
08:41 PM Feature #6584 (WIP): implement schema hint which generates a POJO in addition to a DMO interface
I started the implementation using the bean approach. For the moment, the POJOs are always created - I will add the c... Ovidiu Maxiniuc

07/07/2022

02:49 PM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
OK, let's go with the bean approach for the POJOs. They will just work with Jackson and they will not confuse develop... Eric Faulhaber
09:00 AM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
Eric Faulhaber wrote:
> I do expect that Jackson will be a pretty common library for this kind of work. Constantin, ...
Constantin Asofiei
02:29 PM Feature #6348: implement support for MariaDB
See [[p2j:Adding_Support_For_a_New_Database|Adding Support For a New Database]], but note it is unfinished at the tim... Eric Faulhaber
11:32 AM Feature #6348: implement support for MariaDB
The initial target character set / collation is UTF8MB4. We won't worry about getting an exact, backward compatible c... Eric Faulhaber
11:24 AM Feature #6348: implement support for MariaDB
Proposed data type mappings:
|_. 4GL |_. MariaDB |_. FWD |
| blob | blob | blob ...
Eric Faulhaber
12:45 PM Bug #6502: DATASET:CREATE-LIKE copies temp-table options (like XML-NODE-NAME), while TEMP-TABLE:C...
@#6502+#6450_2.patch.zip@ was committed in revision 6129a/13955. Ovidiu Maxiniuc
11:23 AM Bug #6502: DATASET:CREATE-LIKE copies temp-table options (like XML-NODE-NAME), while TEMP-TABLE:C...
Ovidiu, good catch with @COMPILER:ERROR@, please commit the patch to 6129a. Constantin Asofiei
12:23 PM Bug #6586: parser/conversion bug when a database alias is used
@getLogicalDatabaseForTable@ was previously being used (before @findTableInfo@ was introduced), so yes, it makes sens... Constantin Asofiei
12:22 PM Bug #6586 (Test): parser/conversion bug when a database alias is used
Constantin Asofiei wrote:
> The fix is in 6129a/13954.
I'm assuming the premise is correct. The code changes look...
Eric Faulhaber
11:06 AM Bug #6586 (Review): parser/conversion bug when a database alias is used
The fix is in 6129a/13954. Constantin Asofiei
02:22 AM Bug #6579: QUERY-PREPARE validation
Ovidiu Maxiniuc wrote:
> The QUERY-PREPARE will process the 4GL code and create a complete in-memory class including...
Marian Edu
08:29 PM Bug #6577 (WIP): move RecordBuffer.ooFields at the DMO meta
Multiple shared meta-knowledge about fields and properties of a record was collected in @DmoMeta@ to avoid duplicatin... Ovidiu Maxiniuc

07/06/2022

07:25 PM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
Constantin Asofiei wrote:
> Eric/Ovidiu: on the client-side, jackson is used to serialize to JSON via ObjectMapper. ...
Eric Faulhaber
05:10 PM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
Eric/Ovidiu: on the client-side, jackson is used to serialize to JSON via ObjectMapper. This requires class fields a... Constantin Asofiei
03:59 PM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
Constantin Asofiei wrote:
> Ovidiu, on FWD side, I'm using the declared fields to determine the getter/setter, in @P...
Ovidiu Maxiniuc
12:48 AM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
Ovidiu, on FWD side, I'm using the declared fields to determine the getter/setter, in @PojoSerializer@. If you are r... Constantin Asofiei
08:00 PM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
A basic initial solution could be ready in 2-3 days. Ovidiu Maxiniuc
05:29 PM Bug #6579: QUERY-PREPARE validation
The QUERY-PREPARE will process the 4GL code and create a complete in-memory class including a FQL for the 4GL code. A... Ovidiu Maxiniuc
03:08 PM Bug #6502: DATASET:CREATE-LIKE copies temp-table options (like XML-NODE-NAME), while TEMP-TABLE:C...
Constantin Asofiei wrote:
> Review for the #6502-15 patch:
> * @rules/convert/methods_attributes.rules@: why was th...
Ovidiu Maxiniuc
06:39 AM Bug #6502: DATASET:CREATE-LIKE copies temp-table options (like XML-NODE-NAME), while TEMP-TABLE:C...
Review for the #6502-15 patch:
* @rules/convert/methods_attributes.rules@: why was this code removed?...
Constantin Asofiei
02:17 PM Bug #6485 (Test): tracking-changes can be set if a temp-table has at least a buffer attached to a...
Constantin Asofiei
06:13 AM Bug #6586: parser/conversion bug when a database alias is used
There is a bug when parsing/converting a program which uses a database alias:
* first program:...
Constantin Asofiei
06:04 AM Bug #6586 (Test): parser/conversion bug when a database alias is used
Constantin Asofiei
12:28 AM Bug #6577: move RecordBuffer.ooFields at the DMO meta
Ovidiu Maxiniuc wrote:
> Where should the changes go to?
3821c
Constantin Asofiei

07/05/2022

07:26 PM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
All this sounds good. How long do you think it will take to implement? Eric Faulhaber
07:02 PM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
Eric Faulhaber wrote:
> I don't think this necessarily is a requirement, but doing otherwise may be "unnatural" to d...
Ovidiu Maxiniuc
05:14 PM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
Ovidiu Maxiniuc wrote:
> Question: is it necessary for these POJOs that the private data to be independent fields?
...
Eric Faulhaber
05:12 PM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
I know of no limit in this area. An array should be fine. Greg Shah
04:48 PM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
Question: is it necessary for these POJOs that the private data to be independent fields?
I think, if this is not ...
Ovidiu Maxiniuc
03:06 PM Feature #6584: implement schema hint which generates a POJO in addition to a DMO interface
The idea is to generate a POJO equivalent of a DMO interface during schema conversion, with no binary dependencies on... Eric Faulhaber
02:45 PM Feature #6584 (Review): implement schema hint which generates a POJO in addition to a DMO interface
Eric Faulhaber
04:59 PM Bug #6577: move RecordBuffer.ooFields at the DMO meta
Where should the changes go to? Ovidiu Maxiniuc
05:51 AM Bug #6577: move RecordBuffer.ooFields at the DMO meta
The @RecordBuffer.ooFields@ is resolved via @getPojoGetterMap@, which iterates all getters - there can be DMOs with 1... Constantin Asofiei
05:48 AM Bug #6577 (Review): move RecordBuffer.ooFields at the DMO meta
Constantin Asofiei
02:37 PM Feature #6450 (Review): buffer/buffer-field features
The zipped patch was uploaded in #6502-15.
Constantin, please do the necessary review, when you have the time. Tha...
Ovidiu Maxiniuc
01:40 AM Feature #6450: buffer/buffer-field features
Ovidiu, please upload #6502 and #6450 as a patch and I'll test conversion on my side.
Sorry, I thought I already m...
Constantin Asofiei
02:35 PM Bug #6502: DATASET:CREATE-LIKE copies temp-table options (like XML-NODE-NAME), while TEMP-TABLE:C...
Please find attached the current patch for #6502 and #6450.
Ovidiu Maxiniuc
01:01 PM Feature #6582: implement multi-table AdaptiveQuery
@AdaptiveQuery@ currently is limited to a single table query, due primarily to the complexity of the state machine wh... Eric Faulhaber
12:46 PM Feature #6582 (WIP): implement multi-table AdaptiveQuery
Eric Faulhaber
08:26 AM Bug #6579: QUERY-PREPARE validation
In 4GL the query string is validated in @query-prepare@ method and if anything wrong with it an error is being thrown... Marian Edu
08:20 AM Bug #6579 (New): QUERY-PREPARE validation
Marian Edu
07:35 AM Feature #6507: cross-database joins
Is there a reason to implement this for a specific database backend? Greg Shah

07/04/2022

07:10 PM Feature #6450: buffer/buffer-field features
Thanks, Ovidiu. Please update the incorrect gap markings as part of your commit.
Constantin, it's been a few weeks...
Eric Faulhaber
06:56 PM Feature #6450: buffer/buffer-field features
Eric Faulhaber wrote:
> What is blocking your changes from being committed?
I am waiting for Constantin's green lig...
Ovidiu Maxiniuc
04:48 PM Feature #6450: buffer/buffer-field features
Ovidiu Maxiniuc wrote:
> I have implementation of some of the above attributes/methods as a pending changeset for 61...
Eric Faulhaber
06:32 PM Feature #6574: auto-detect native UDFs at server startup and install them if missing
We have had many users stumble with the installation of the native UDFs. In the event the directory does not specify ... Eric Faulhaber
06:28 PM Feature #6574 (Closed): auto-detect native UDFs at server startup and install them if missing
Eric Faulhaber
05:25 PM Bug #5673: Additional support for INDEXED REPOSITION open query attribute
Alexandru Lungu wrote:
> The INDEXED REPOSITION 4GL optimization allows query reposition to records which were not...
Eric Faulhaber
04:40 PM Feature #6507: cross-database joins
Initially, we need to support this for MariaDB, which essentially just means planning what database instances will lo... Eric Faulhaber

06/27/2022

11:08 AM Feature #6450 (WIP): buffer/buffer-field features
I have implementation of some of the above attributes/methods as a pending changeset for 6129a. Ovidiu Maxiniuc

06/24/2022

09:25 AM Feature #6450: buffer/buffer-field features
When implementing the runtime support for @buffer-handle:PRIMARY@, consider supporting @temp-table-handle:PRIMARY@ if... Greg Shah

06/20/2022

06:18 PM Bug #6485: tracking-changes can be set if a temp-table has at least a buffer attached to a dataset
I added the complete implementation of @DATA-SOURCE-ROWID(num/name)@ in revision 13947.
Ovidiu Maxiniuc

06/18/2022

02:21 AM Bug #6485: tracking-changes can be set if a temp-table has at least a buffer attached to a dataset
Ovidiu, thank you, it solves the issue I had in #6277. Constantin Asofiei
08:31 PM Bug #6485: tracking-changes can be set if a temp-table has at least a buffer attached to a dataset
Interesting. I added some more lines to that testcase. If the data-source is detached or replaced with another, the a... Ovidiu Maxiniuc

06/17/2022

02:29 PM Bug #6485: tracking-changes can be set if a temp-table has at least a buffer attached to a dataset
Constantin Asofiei wrote:
> I have a case where the disabled code in #6485-12 needs to be backed out,
I meant the c...
Constantin Asofiei
02:23 PM Bug #6485: tracking-changes can be set if a temp-table has at least a buffer attached to a dataset
Ovidiu, please work on fixing #6485-7 issue. I have a case where the disabled code in #6485-12 needs to be backed out... Constantin Asofiei
10:25 AM Feature #6444: dataset improvements
Ovidiu, could you please review the list above and indicate what the actual support is currently (and update gap mark... Eric Faulhaber
06:11 AM Bug #6524 (Test): BUFFER-COPY does not create a record in the before-table
Ovidiu, thank you, this solves the problem I was seeing.
Constantin Asofiei
08:50 PM Bug #6524 (WIP): BUFFER-COPY does not create a record in the before-table
It seems that the buffer copy operation was not very well understood at the moment it was implemented. The effort was... Ovidiu Maxiniuc

06/16/2022

06:25 PM Bug #6524: BUFFER-COPY does not create a record in the before-table
Yes. It seems to me this is not really about the buffer-copy itself. It is about the edits to @tt1@ which have to b... Greg Shah
05:29 PM Bug #6524: BUFFER-COPY does not create a record in the before-table
Greg Shah wrote:
> It seems to me the 4GL may not care if there is a before-table on the source temp-table (@tt2@). ...
Ovidiu Maxiniuc
05:25 PM Bug #6524: BUFFER-COPY does not create a record in the before-table
It seems to me the 4GL may not care if there is a before-table on the source temp-table (@tt2@). The before-table on... Greg Shah
04:49 PM Bug #6524: BUFFER-COPY does not create a record in the before-table
Constantin Asofiei wrote:
> Ovidiu, why are you talking about tt2 before-table? This is not about tt2, is about tt1...
Ovidiu Maxiniuc
04:10 PM Bug #6524: BUFFER-COPY does not create a record in the before-table
Ovidiu, why are you talking about tt2 before-table? This is not about tt2, is about tt1 - this table has TRACKING-CH... Constantin Asofiei
03:59 PM Bug #6524: BUFFER-COPY does not create a record in the before-table
Constantin,
Normally, @RecordBuffer.copy()@ checks whether the involved buffers have the conditions for copying th...
Ovidiu Maxiniuc
01:17 PM Bug #6524: BUFFER-COPY does not create a record in the before-table
BUFFER-COPY (statement and method) should create the record in the before-table:... Constantin Asofiei
01:16 PM Bug #6524 (Test): BUFFER-COPY does not create a record in the before-table
Constantin Asofiei
 

Also available in: Atom