Skip to content

Latest commit

 

History

History
70 lines (39 loc) · 3.34 KB

File metadata and controls

70 lines (39 loc) · 3.34 KB
graph LR
    ORM_Core["ORM Core"]
    Field_Definition_Behavior["Field Definition & Behavior"]
    Database_Abstraction["Database Abstraction"]
    Query_Building_SQL_Generation["Query Building & SQL Generation"]
    Cache_Management["Cache Management"]
    ORM_Core -- "translates data operations and sends SQL queries to" --> Database_Abstraction
    ORM_Core -- "relies on" --> Field_Definition_Behavior
    Field_Definition_Behavior -- "provides field metadata and validation rules to" --> ORM_Core
    ORM_Core -- "uses and provides high-level query specifications to" --> Query_Building_SQL_Generation
    Query_Building_SQL_Generation -- "outputs generated SQL to" --> Database_Abstraction
    ORM_Core -- "triggers and sends invalidation signals and data updates to" --> Cache_Management
    Cache_Management -- "provides cached data to" --> ORM_Core
Loading

CodeBoardingDemoContact

Details

The Core Data & ORM Layer is a fundamental subsystem within the Odoo ERP, providing robust data persistence and retrieval. It abstracts complex database interactions, offering a high-level, object-oriented interface for the rest of the system.

ORM Core

This is the central component of the data layer, providing the Object-Relational Mapping functionalities. It enables the interaction with database records as Python objects, orchestrates Create, Read, Update, and Delete (CRUD) operations, and manages recordsets. It serves as the primary interface for business logic to interact with the underlying data.

Related Classes/Methods:

  • odoo.models

Field Definition & Behavior

This component defines the metadata, validation rules, and data conversion logic for all fields within Odoo models. It dictates how data is stored, retrieved, displayed, and validated, ensuring data integrity and consistency across the application.

Related Classes/Methods:

  • odoo.fields

Database Abstraction

Manages low-level interactions with the PostgreSQL database, including connection pooling, transaction management (savepoints, commit, rollback), and direct SQL query execution. It isolates the ORM and other components from specific database driver details and ensures efficient resource utilization.

Related Classes/Methods:

  • odoo.sql_db

Query Building & SQL Generation

This component is responsible for translating Odoo's high-level query domains and field references into optimized SQL statements. It ensures that data retrieval and manipulation operations are performed efficiently and securely at the database level.

Related Classes/Methods:

  • odoo.models

Cache Management

Optimizes system performance by managing in-memory caching of model and record data. This includes mechanisms for cache invalidation, which reduces redundant database queries and significantly improves response times for frequently accessed data.

Related Classes/Methods:

  • odoo.models