The db is not stable with large table and left join:
EX, my orm.xml is complex, I just give some part:
<entity name="DataMigrationInformation" 
class="com.emc.gs.tools.srf.model.infrastructure.DataMigrationInformation">
        <table name="DataMigrationInformation" />
        <attributes>
            <basic name="newSitesNumber">
                <column name="new_sites_number" nullable="true" />
            </basic>
            <basic name="migrationTopology">
                <column name="migration_topology" nullable="true" />
            </basic>
            <basic name="recoverPointMigrationOption">
                <column name="recover_point_migration_option" 
nullable="true" />
            </basic>
            <basic name="otherArrayToolsHostsNumber">
                <column name="other_array_tools_hosts_number" 
nullable="true" />
            </basic>
            <basic name="newTargetHostsNumber">
                <column name="new_target_hosts_number" nullable="true" />
            </basic>
            <basic name="symmetrixSourceArraysNumber">
                <column name="symmetrix_source_arrays_number" 
nullable="true" />
            </basic>
            <basic name="clariionSourceArraysNumber">
                <column name="clariion_source_arrays_number" 
nullable="true" />
            </basic>
            <basic name="symmetrixTargetArraysNumber">
                <column name="symmetrix_target_arrays_number" 
nullable="true" />
            </basic>
            <basic name="clariionTargetArraysNumber">
                <column name="clariion_target_arrays_number" 
nullable="true" />
            </basic>
            <basic name="migrateLunsToSymmetrixOption">
                <column name="migrate_luns_to_symmetrix_option" 
nullable="true" />
            </basic>
            <basic name="migrateLunsToClariionOption">
                <column name="migrate_luns_to_clariion_option" 
nullable="true" />
            </basic>
            <basic name="weekendMaintenanceHours">
                <column name="weekend_maintenance_hours" nullable="true" />
            </basic>
            <basic name="migrationCutoverHostsNumber">
                <column name="migration_cutover_hosts_number" 
nullable="true" />
            </basic>
            <basic name="migrationCutoverTestsNumber">
                <column name="migration_cutover_tests_number" 
nullable="true" />
            </basic>
            <basic name="migrationCutoverEventsNumber">
                <column name="migration_cutover_events_number" 
nullable="true" />
            </basic>
            <basic name="scriptAdjustmentOption">
                <column name="script_adjustment_option" nullable="true" />
            </basic>
            <many-to-one name="migrationWorker">
                <join-column name="migration_worker_id" />
            </many-to-one>
            <many-to-one name="swingFrameMigration">
                <join-column name="swing_frame_migration_id" />
            </many-to-one>
            <many-to-one name="targetFrameMigration">
                <join-column name="target_frame_migration_id" />
            </many-to-one>
            <many-to-one name="symmetrixVolumeSizeChange">
                <join-column name="symmetrix_volume_size_change_id" />
            </many-to-one>
            <many-to-one name="clariionVolumeSizeChange">
                <join-column name="clariion_volume_size_change_id" />
            </many-to-one>
            <many-to-one name="emcMigrationInvolvement">
                <join-column name="emc_migration_involvement_id" />
            </many-to-one>
            <element-collection name="symmetrixHostsNumber" fetch="LAZY">
                <map-key-column name="map_key"/>
                <column name="map_value"/>
                <collection-table 
name="DataMigrationInformationn_symmetrixHostsNumber" >
                    <join-column name="data_migration_information_id" />
                </collection-table>
            </element-collection>
            <element-collection name="symmetrixClustersNumber" fetch="LAZY">
                <map-key-column name="map_key"/>
                <column name="map_value"/>
                <collection-table 
name="DataMigrationInformationn_symmetrixClustersNumber" >
                    <join-column name="data_migration_information_id" />
                </collection-table>
            </element-collection>
            <element-collection name="cxNsHostsNumber" fetch="LAZY">
                <map-key-column name="map_key"/>
                <column name="map_value"/>
                <collection-table 
name="DataMigrationInformationn_cxNsHostsNumber" >
                    <join-column name="data_migration_information_id" />
                </collection-table>
            </element-collection>
            <element-collection name="cxNsClustersNumber" fetch="LAZY">
                <map-key-column name="map_key"/>
                <column name="map_value"/>
                <collection-table 
name="DataMigrationInformationn_cxNsClustersNumber" >
                    <join-column name="data_migration_information_id" />
                </collection-table>
            </element-collection>
            <element-collection name="databasesNumber" fetch="LAZY">
                <map-key-column name="map_key"/>
                <column name="map_value"/>
                <collection-table 
name="DataMigrationInformationn_databasesNumber" >
                    <join-column name="data_migration_information_id" />
                </collection-table>
            </element-collection>
        </attributes>
    </entity>

Each cxNsClustersNumber is a map<String, Integer>, If I change all 
fetch="EAGER", Hibernate will create sql like:
XXXX left join XXX left join ....  (very long)
The db very dead(correctly dead, can not visit, just make a db temp file 
increase)
My test.h2.db is about 3M, I can not close H2, and see that temp file 
increase to 3G, then reboot the machine.

Please recheck the code about large left join sql.

-- 
You received this message because you are subscribed to the Google Groups "H2 
Database" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/h2-database.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to