Project

General

Profile

Activity

From 11/30/2022 to 12/29/2022

12/28/2022

07:27 AM Feature #6410: implement additional built-in OO classes/interfaces
Greg Shah wrote:
> Yes, please use @PROVERSION@ and preprocessing to conditionally implement logic by OE version.
...
Marian Edu

12/23/2022

11:55 AM Feature #6824: lazy initialization of collection class members
Some notes :
* @BufferImpl.callbacks@ can be lazily created, not all buffers are used in FILL operations.
* @Record...
Constantin Asofiei
08:30 AM Feature #3853: implement LOG-MANAGER runtime
@LOG-MANAGER:WRITE-MESSAGE@ supports by default text up to 15000 characters (actually it should be less, since that i... Galya B
05:45 AM Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
Constantin Asofiei wrote:
> Constantin Asofiei wrote:
> > Attached patch is built on top of #6939 patch. Eric, ple...
Constantin Asofiei

12/21/2022

02:29 PM Feature #6827: reduce the memory footprint of WrappedResource implementations: replace BDTs with ...
I think the @object@ fields need to remain as-is, for the reference counting to work (which affects when these get de... Constantin Asofiei
02:28 PM Feature #6827: reduce the memory footprint of WrappedResource implementations: replace BDTs with ...
This code:... Constantin Asofiei
09:38 AM Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
Constantin Asofiei wrote:
> Attached patch is built on top of #6939 patch. Eric, please review and use this one for...
Constantin Asofiei

12/20/2022

02:19 PM Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
Attached patch is built on top of #6939 patch. Eric, please review and use this one for your tests. Constantin Asofiei
04:40 AM Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
I've tested with a 'static bytecode' (i.e. 10k .java files each with 300 lambdas, checked the disassembled .class and... Constantin Asofiei
07:47 AM Feature #7000: Replace old-style synchronization primitives with java.util.concurrent classes
Greg Shah wrote:
> Do you have specific areas seen in profiling where these old-style primitives are heavily involve...
Igor Skornyakov
06:24 AM Feature #7000: Replace old-style synchronization primitives with java.util.concurrent classes
Do you have specific areas seen in profiling where these old-style primitives are heavily involved? Greg Shah
03:22 AM Feature #7000: Replace old-style synchronization primitives with java.util.concurrent classes
FWD code contains many places where old-style synchronization primitives (@synchronized@ blocks, @wait@/@notify@) are... Igor Skornyakov
02:58 AM Feature #7000 (New): Replace old-style synchronization primitives with java.util.concurrent classes
Igor Skornyakov

12/19/2022

06:08 PM Feature #3853: implement LOG-MANAGER runtime
> > The base implementation is already handled at conversion and it is stubbed out in the runtime.
>
> Does it mea...
Greg Shah
06:35 AM Feature #3853: implement LOG-MANAGER runtime
Greg Shah wrote:
> The base implementation is already handled at conversion and it is stubbed out in the runtime.
...
Galya B
11:28 AM Feature #6821: java collection performance
For @ArrayList.iterator()@, the top callers are:
* @PreselectQuery.components()@ - 430k
* @AnnotatedAst.notifyListe...
Constantin Asofiei
10:26 AM Feature #6821: java collection performance
The ones that are most important are listed in #6821-4. We aren't suggesting changing things everywhere. Greg Shah
10:22 AM Feature #6821: java collection performance
That may be true. There're about 2k foreach loops, and about 10% of them can be updated. If we want, we can can limit... Stanislav Lomany
09:57 AM Feature #6821: java collection performance
Stanislav Lomany wrote:
> > Actually, I doubt that such optimization will result in any significant performance in a...
Igor Skornyakov
09:56 AM Feature #6821: java collection performance
Small improvements over millions of calls add up. The fact that the profiling tools don't show obvious hotspots mean... Greg Shah
09:45 AM Feature #6821: java collection performance
Greg Shah wrote:
> > I would perform benchmarking/profiling first.
>
> This is what was done. See #6821-4.
Th...
Igor Skornyakov
09:31 AM Feature #6821: java collection performance
> The point with all the Map and Set iterators is that they allocate lots of short-lived objects.
That's true. I m...
Stanislav Lomany
09:25 AM Feature #6821: java collection performance
> Actually, I doubt that such optimization will result in any significant performance in all situations.
I did som...
Stanislav Lomany
09:18 AM Feature #6821: java collection performance
> I would perform benchmarking/profiling first.
This is what was done. See #6821-4.
Greg Shah
05:12 AM Feature #6821: java collection performance
Actually, I doubt that such optimization will result in any significant performance in all situations. See e.g. a dis... Igor Skornyakov
04:54 AM Feature #6821: java collection performance
Stanislav Lomany wrote:
> I assume we're taking about replacing
Correct.
> I found that there're not so many plac...
Constantin Asofiei
04:45 AM Feature #6821 (WIP): java collection performance
Constantin,
> For example, using Java for-each loop for an an ArrayList instead of a @for@ and getting the element...
Stanislav Lomany
09:08 AM Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
> the performance decreased a lot (there may be some internal storage which affects the INVOKEDYNAMIC instruction at ... Greg Shah
09:08 AM Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
From Constantin:
> More with the the lambda for ControlFlowOps, I think the lambda performance is directly proport...
Greg Shah

12/16/2022

03:31 AM Bug #6999: OO methods/properties used in direct Java calls
Consider this type:... Constantin Asofiei
03:27 AM Bug #6999 (New): OO methods/properties used in direct Java calls
Constantin Asofiei

12/15/2022

09:28 AM Feature #6827 (WIP): reduce the memory footprint of WrappedResource implementations: replace BDTs...
Sorry, guys, I think I've reviewed all FWD classes implemening @WrappedResource@ but there're no usages of BDT. I've ... Stanislav Lomany

12/14/2022

01:26 PM Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
The lambdas will created like this:... Constantin Asofiei
09:15 AM Feature #6410: implement additional built-in OO classes/interfaces
Yes, please use @PROVERSION@ and preprocessing to conditionally implement logic by OE version. Greg Shah
09:09 AM Feature #6410: implement additional built-in OO classes/interfaces
Greg Shah wrote:
> OE 11.7.x is in use right now. They can't move to OE 12 without facing serious issues which have...
Marian Edu
07:42 AM Bug #6993: OO: incorrect field names in DataTypeEnum.java
Greg Shah wrote:
> Can you do something low effort to work around this issue until we have 6129b changes ready?
I...
Vladimir Tsichevski
07:32 AM Bug #6993: OO: incorrect field names in DataTypeEnum.java
Can you do something low effort to work around this issue until we have 6129b changes ready? Greg Shah

12/13/2022

04:54 PM Bug #6993: OO: incorrect field names in DataTypeEnum.java
Greg Shah wrote:
> Vladimir: Please check your failing scenario in 6129b and let us know what you find.
Yes, in...
Vladimir Tsichevski
04:53 PM Bug #6993: OO: incorrect field names in DataTypeEnum.java
Constantin Asofiei wrote:
> Check your classpath. ConvertedClassName no longer exists in 6129b.
Yes, I forgot to ...
Vladimir Tsichevski
04:29 PM Bug #6993: OO: incorrect field names in DataTypeEnum.java
Check your classpath. ConvertedClassName no longer exists in 6129b. Constantin Asofiei
03:43 PM Bug #6993: OO: incorrect field names in DataTypeEnum.java
Greg Shah wrote:
> Vladimir: Please check your failing scenario in 6129b and let us know what you find.
I canno...
Vladimir Tsichevski
02:04 PM Bug #6993: OO: incorrect field names in DataTypeEnum.java
Our OO implementation is much more advanced in vranch 6129b than in 3821c. In 6129b, at this time we only use @Legac... Greg Shah
07:30 AM Bug #6993: OO: incorrect field names in DataTypeEnum.java
Vladimir Tsichevski wrote:
> No, it is the Java sources which will not compile.
> Note: the name if the field ref...
Marian Edu
07:24 AM Bug #6993: OO: incorrect field names in DataTypeEnum.java
Marian Edu wrote:
> All classes in @OpenEdge@ and @Progress@ packages were created *manually*, this is the expecte...
Vladimir Tsichevski
07:13 AM Bug #6993: OO: incorrect field names in DataTypeEnum.java
Vladimir Tsichevski wrote:
> The fields in @OpenEdge.Core.DataTypeEnum@ are named after the corresponding Progress b...
Marian Edu
06:59 AM Bug #6993 (Review): OO: incorrect field names in DataTypeEnum.java
Fixed in 3821c rev. 14438. Vladimir Tsichevski
06:45 AM Bug #6993 (WIP): OO: incorrect field names in DataTypeEnum.java
Vladimir Tsichevski
06:42 AM Bug #6993: OO: incorrect field names in DataTypeEnum.java
Please do fix this. Greg Shah
06:31 AM Bug #6993: OO: incorrect field names in DataTypeEnum.java
The fields in @OpenEdge.Core.DataTypeEnum@ are named after the corresponding Progress base data types, like @characte... Vladimir Tsichevski
06:24 AM Bug #6993 (Closed): OO: incorrect field names in DataTypeEnum.java
Vladimir Tsichevski

12/08/2022

03:13 PM Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
Yes. I assume the proxy case is being worked on in #6939. Greg Shah
02:42 PM Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
Greg, the 8 million iterations chosen for the MthdTest was because this is the number of Utils.invoke for a large app... Constantin Asofiei
01:52 PM Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
> How will it pass the parameters?
We can handle this with a bit of "standardization" in the registration or via a...
Greg Shah
01:41 PM Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
I've tested something like this (for my original MthdTest):... Constantin Asofiei
12:52 PM Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
Constantin Asofiei wrote:
> Greg Shah wrote:
> > We can generate Java code to register lambdas with CFO during an i...
Constantin Asofiei
12:41 PM Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
Greg Shah wrote:
> We can generate Java code to register lambdas with CFO during an initializer. It could be an arr...
Constantin Asofiei
11:24 AM Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
We can generate Java code to register lambdas with CFO during an initializer. It could be an array where each elemen... Greg Shah
11:20 AM Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
Greg, for ControlFlowOps, this lambda method approach can't be easily used - because we will have to generate 'on the... Constantin Asofiei
10:13 AM Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
> For this, we need to change the FWD proxy impl to send the lambda beside the Method to the handler.
Eric's idea ...
Greg Shah
10:03 AM Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
Greg Shah wrote:
> I'm especially excited to see how this improves the @ControlFlowOps@ usage since we could elimina...
Constantin Asofiei
08:02 AM Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
I'm especially excited to see how this improves the @ControlFlowOps@ usage since we could eliminate the dispatching c... Greg Shah
09:04 PM Feature #6819: refactor FWD proxy implementation to use ReflectASM instead of Java Method reflection
I've been working on a different approach to this problem. The original problem noted above is that ReflectASM and J... Greg Shah

12/01/2022

07:52 AM Bug #6974: NPE at OpenEdge.Core.Class.IsInterface
The test code (@isinterface.p@):... Vladimir Tsichevski
07:46 AM Bug #6974 (New): NPE at OpenEdge.Core.Class.IsInterface
Vladimir Tsichevski
 

Also available in: Atom