Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "EclipseLink/Development/Summit/Topics"

(Tooling)
m (JPA 2.0 MetaModel)
 
(29 intermediate revisions by 5 users not shown)
Line 3: Line 3:
 
== TUESDAY ==
 
== TUESDAY ==
  
=== Project Overview ===
+
===Welcome===
 +
''Lead: Doug Clarke''
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/Welcome.ppt
 +
* Introductions
 +
* Logistics
 +
* Goals & Expectations
  
* JPA - Peter Krogh
+
===Overview===
* MOXy - Blaise Doughan
+
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/EclipseLink_Project_Overview.ppt
** Key Concepts, benefits, and advanced features
+
*JPA - Peter Krogh  
** Shared Models with JPA and MOXy
+
** JPA 1.0, 2.0
* SDO - Blaise Doughan
+
** Native API
** Key Concepts, benefits, and advanced features
+
*MOXy - Blaise Doughan  
** Using JPA with SDO
+
**Key Concepts, benefits, and advanced features  
* DBWS - Mike Norman
+
**Shared Models with JPA and MOXy
** Key Concepts, benefits, and advanced features
+
*SDO - Blaise Doughan  
 
+
**Key Concepts, benefits, and advanced features  
===Architecture Overview===
+
**Using JPA with SDO
 +
*DBWS - Mike Norman  
 +
**Key Concepts, benefits, and advanced features
  
 +
===Architecture===
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/Architecture-orm.ppt
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/Architecture-MOXyAndSDO.ppt
 
* ORM Architetcture
 
* ORM Architetcture
 
** Sessions
 
** Sessions
Line 28: Line 38:
 
** XML Context/Session
 
** XML Context/Session
  
===Mapping & Metamodel ===
+
===Mapping===
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/MappingsAndMetadata.ppt
 
Presenters: Guy & Blaise
 
Presenters: Guy & Blaise
  
Line 41: Line 52:
 
* JPA Metadata Processing
 
* JPA Metadata Processing
  
===The Shared Cache===
+
===Cache===
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/EclipseLink_Intro_Cache.ppt
  
 
* Identity Management
 
* Identity Management
Line 52: Line 64:
 
* Configuration Best Practices
 
* Configuration Best Practices
  
===Queries & Object Building===
+
===Queries===
 
+
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/Queries and Object Building.ppt
* Structure: Query Types, Calls, Statements
+
* Query Execution Path
+
** JPA Query Processing
+
* Cache Usage
+
** Cache Hits
+
** Conforming
+
* Cloning
+
* Policies
+
** Instantiation
+
** Clone/Copy
+
* Query Caches: Named, Descriptor, JPQL Parse Cache
+
* Lazy Loading
+
** ValueHolders: Query Based, UnitOfWork
+
  
 +
* EclipseLink Query Types
 +
** ReadObject, ReadAll, Report (Items), ModifyAll, DataModify, DataReadQuery, DoesExistQuery
 +
** QueryByExample
 +
* Expressions
 +
** Expression Builder
 +
* JPA translation
 +
** JPQL parser, CriteriaBuilder, ResultSetMappingQuery
 +
* Query Caching
 +
* Object Building
 +
** Cache Usage
 +
** Instantiation Policy and Clone Copy Policy
 +
** Refreshing
 +
** FetchGroups
 +
* Lazy Loading and Queries
 +
* Batch Reading / Join Fetch
  
===Transactions: UnitOfWork===
+
===Transactions===
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/Transactions.ppt
  
 
* UnitOfWork Basics
 
* UnitOfWork Basics
Line 84: Line 99:
  
 
=== Tooling ===
 
=== Tooling ===
'''Presenter: Karen Butzke'''
+
 
 +
''Lead: Karen Butzke''
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/Persistence Tooling.ppt
  
 
* EclipseLink Workbench
 
* EclipseLink Workbench
Line 93: Line 110:
 
** Library Configuration
 
** Library Configuration
 
** New In Helios
 
** New In Helios
*** TBD
+
*** JPA 2.0 platform
*** Canonical Model gen
+
**** Canonical Model Generation
 +
**** Element Collection including Map support
 +
**** Derived Identity
 +
**** Caching
 +
**** Mixed Access Type
 +
**** Nested Embeddables, Relationships in Embeddables
 +
*** JAXB Class/Schema Generation
 +
*** Validation Preferences
 +
** Future Direction
  
=== Advanced Querying ===
+
=== JPA 2.0 MetaModel===
 +
''Lead: Michael O'Brien & Guy Pelletier''
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/EclipseLink_JPA2_Metamodel.ppt
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/CanonicalModelGen.ppt
  
* Expression Framework
+
* Metamodel ''Michael O'Brien ''
* Optimizations
+
** Mapping between JPA 2.0 classes and native metadata metamodel
** Joining
+
** Architecture
** Batching
+
** Initialization
** FetchGroup
+
** Demo
** Projections (ReportQuery)
+
** Challenges/Issues
* Cache Usage
+
** Future
** Conforming
+
*** Extended Metamodel API
** In-memory
+
* Query Redirectors
+
* Query Life-cycle Events
+
* Stored Procedures
+
 
+
=== Advanced Caching ===
+
 
+
* Isolated/Transactional Caching
+
* Stale Cache Management
+
** Refreshing
+
** Cache Coordination
+
* Interceptors
+
 
+
=== Management, Diagnostics, & Tuning===
+
 
+
=== Documentation ===
+
  
 +
* Model Gen ''Guy Pelletier''
 +
** Model gen using compiler hooks
 +
** Challenges/Issues/Limitations
 +
** Future
 +
*** EclipseLink extended mapping
  
 
=== Weaving ===
 
=== Weaving ===
 +
''Lead: Tom Ware''
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/EclipseLink-Weaving.ppt
  
 
* Features Woven
 
* Features Woven
Line 136: Line 155:
 
* Challenges/Issues
 
* Challenges/Issues
 
* Future Direction
 
* Future Direction
 +
 +
=== Advanced Querying ===
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/AdvancedQueries.ppt
 +
 +
* Execution
 +
** EclipseLink query execution
 +
*** Query To SQL translation
 +
* Cursored Streams
 +
* Query Redirection
 +
* Custom Calls
 +
** StoredProcedure calls
 +
* InmemoryQuerying / Conforming
 +
** Conforming limitations
 +
** InMemoryQueryIndirectionPolicy
 +
* Query Options
 +
** CacheUsage
 +
 +
=== Advanced Caching ===
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/Advanced-Cache.ppt
 +
 +
* Isolated Caches
 +
** JPA Cacheable(false)
 +
* Invalidation
 +
** JPA Cache.evict()
 +
* Cache concurrency
 +
** ReadLocks
 +
** DeferredLocks
 +
** Active Locks
 +
** WriteLockManager
 +
*Cache Interceptors
 +
** distributed cache integrations
 +
 +
=== Management, Diagnostics, & Tuning===
 +
''Lead: James Sutherland''
 +
 +
* Logging
 +
* MBeans
 +
* Profilers
 +
* Performance Tuning Infrastructure
 +
** Guidelines for Developers
 +
* User Best Practices
  
 
=== Customization ===
 
=== Customization ===
  
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/Customizing.ppt
 
* Customizers: Session & Descriptor
 
* Customizers: Session & Descriptor
 
* Listeners: Session & Descriptor
 
* Listeners: Session & Descriptor
Line 147: Line 208:
 
* Future
 
* Future
 
** [[EclipseLink/Development/ConfigProfiles|Configuration Profile]] - {{bug|293766}}
 
** [[EclipseLink/Development/ConfigProfiles|Configuration Profile]] - {{bug|293766}}
 +
 +
=== Dynamic Persistence ===
 +
''Lead: Doug Clarke''
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/Dynamic Persistence.ppt
 +
 +
* Background and Usage Examples
 +
* Solution Design
 +
** Config: Native XML, API, eclipselink-orm.xml
 +
* Challenges/Issues/Limitations
 +
* Future
  
 
== THURSDAY ==
 
== THURSDAY ==
  
===EclipseLink Development Process===
+
===EclipseRT===
 +
''Presenter: Jeff McAffer, EclipseSource''
  
* Eclipse processes
+
===EclipseLink and OSGi===
 +
''Lead: Tom Ware''
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/EclipseLink-OSGi.ppt
 +
 
 +
* Impact of OSGi enabling EclipseLink
 +
** Commiter Do's and Don'ts
 +
* Migrating to Gemini JPA
 +
** Gemini in a Nutshell
 +
** javax.persistence
 +
** backwards compatibility
 +
* Future Direction
 +
** Further bundle refactoring
 +
 
 +
=== Documentation ===
 +
''Lead: Rick Sapir''
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/EclipseLink-Documentation.odp
 +
* Current State
 +
* Requirements Review
 +
* Proposed Future Direction
 +
* Challenges and Issues
 +
* Roles of tech Writers and Developers
 +
 
 +
===Process===
 +
''Lead: Peter Krogh''
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/Process.ppt
 +
* Eclipse Processes
 
** IP process, log, use of Bugzilla
 
** IP process, log, use of Bugzilla
 
** Annual Release Train
 
** Annual Release Train
 
** Header: License and contribution log
 
** Header: License and contribution log
 
 
* EclipseLink Development process
 
* EclipseLink Development process
 +
** Using Bugzilla
 +
** Project Plans
 +
** Releases, Milestones, and patch-sets
 +
* Future Direction Discussion
 +
** Utilities: Find Bugs, Code formatting, Code Coverage
 +
** Incubator
 +
** GIT?
  
** Code Formatting
+
===Build===
 +
''Lead: Eric Gwin''
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/
  
* Future Direction
+
* Current Build Overview
 +
* Challenges/Issues
 +
* Future
 +
** PDE Build?
 +
 
 +
===Test===
 +
''Lead: Tom Ware''
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/EclipseLink-Testing.ppt
 +
 
 +
* Current Test Overview
 +
* Challenges/Issues
 +
** JPA
 +
*** Persistence Units
 +
*** Weaving
 +
 
 +
===Road Map===
 +
''Lead: Doug Clarke''
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/RoadMap.ppt
  
** Utilities
+
* Release infrastructure
*** Find Bugs
+
** Project Plans
*** Auto formatting
+
** Wiki
*** Code Coverage
+
** Web Site
 +
* Post 2.1 (Helios Planning)
 +
** Themes
 +
** Releases/Patches before next annual
 +
** Next Annual Release

Latest revision as of 16:01, 8 September 2010

EclipseLink Summit Topics

TUESDAY

Welcome

Lead: Doug Clarke

Overview

Architecture

  • MOXy Architecture
    • XML Context/Session

Mapping

Presenters: Guy & Blaise

  • Mapping Types
  • Mapping Options
    • JPA: annotations, orm.xml, EL annotations, eclispelink-orm.xml
    • Native: sessions.xml, deployment (project) xml
    • Hand coded (API)
  • XML Processing using MOXy
    • Schema Validation
    • Schema Version & Backwards Compatibility
  • JPA Metadata Processing

Cache

  • Identity Management
  • Cache Structure:
    • IdentityMaps
    • CacheKey
    • Locking
  • Concurrency & Locking
  • Invalidation
  • Configuration Best Practices

Queries

  • EclipseLink Query Types
    • ReadObject, ReadAll, Report (Items), ModifyAll, DataModify, DataReadQuery, DoesExistQuery
    • QueryByExample
  • Expressions
    • Expression Builder
  • JPA translation
    • JPQL parser, CriteriaBuilder, ResultSetMappingQuery
  • Query Caching
  • Object Building
    • Cache Usage
    • Instantiation Policy and Clone Copy Policy
    • Refreshing
    • FetchGroups
  • Lazy Loading and Queries
  • Batch Reading / Join Fetch

Transactions

  • UnitOfWork Basics
    • Change Tracking
    • ChangeSets
    • ChangeTracking
    • Commit/flush process
    • Merge
  • RepeatabaleWriteUnitOfWork
    • FlushMode
  • Session Events

WEDNESDAY

Tooling

Lead: Karen Butzke

  • EclipseLink Workbench
  • JDeveloper
  • Dali
    • Generic JPA
    • EclipseLink JPA
    • Library Configuration
    • New In Helios
      • JPA 2.0 platform
        • Canonical Model Generation
        • Element Collection including Map support
        • Derived Identity
        • Caching
        • Mixed Access Type
        • Nested Embeddables, Relationships in Embeddables
      • JAXB Class/Schema Generation
      • Validation Preferences
    • Future Direction

JPA 2.0 MetaModel

Lead: Michael O'Brien & Guy Pelletier

  • Metamodel Michael O'Brien
    • Mapping between JPA 2.0 classes and native metadata metamodel
    • Architecture
    • Initialization
    • Demo
    • Challenges/Issues
    • Future
      • Extended Metamodel API
  • Model Gen Guy Pelletier
    • Model gen using compiler hooks
    • Challenges/Issues/Limitations
    • Future
      • EclipseLink extended mapping

Weaving

Lead: Tom Ware

  • Features Woven
    • Lazy Loading
    • Change Tracking
    • State Caching: Identity, Session
  • Configuration
    • Persistence Unit Properties
    • Dynamic Weaving
    • Static Weaving
  • Challenges/Issues
  • Future Direction

Advanced Querying

  • Execution
    • EclipseLink query execution
      • Query To SQL translation
  • Cursored Streams
  • Query Redirection
  • Custom Calls
    • StoredProcedure calls
  • InmemoryQuerying / Conforming
    • Conforming limitations
    • InMemoryQueryIndirectionPolicy
  • Query Options
    • CacheUsage

Advanced Caching

  • Isolated Caches
    • JPA Cacheable(false)
  • Invalidation
    • JPA Cache.evict()
  • Cache concurrency
    • ReadLocks
    • DeferredLocks
    • Active Locks
    • WriteLockManager
  • Cache Interceptors
    • distributed cache integrations

Management, Diagnostics, & Tuning

Lead: James Sutherland

  • Logging
  • MBeans
  • Profilers
  • Performance Tuning Infrastructure
    • Guidelines for Developers
  • User Best Practices

Customization

Dynamic Persistence

Lead: Doug Clarke

  • Background and Usage Examples
  • Solution Design
    • Config: Native XML, API, eclipselink-orm.xml
  • Challenges/Issues/Limitations
  • Future

THURSDAY

EclipseRT

Presenter: Jeff McAffer, EclipseSource

EclipseLink and OSGi

Lead: Tom Ware

  • Impact of OSGi enabling EclipseLink
    • Commiter Do's and Don'ts
  • Migrating to Gemini JPA
    • Gemini in a Nutshell
    • javax.persistence
    • backwards compatibility
  • Future Direction
    • Further bundle refactoring

Documentation

Lead: Rick Sapir

Process

Lead: Peter Krogh

Build

Lead: Eric Gwin

  • Current Build Overview
  • Challenges/Issues
  • Future
    • PDE Build?

Test

Lead: Tom Ware

  • Current Test Overview
  • Challenges/Issues
    • JPA
      • Persistence Units
      • Weaving

Road Map

Lead: Doug Clarke

  • Release infrastructure
    • Project Plans
    • Wiki
    • Web Site
  • Post 2.1 (Helios Planning)
    • Themes
    • Releases/Patches before next annual
    • Next Annual Release

Back to the top