Offset 1, 16 lines modified | Offset 1, 16 lines modified | ||
1 | ·30d641d32f140ab77de489f4a5817d85·396892·debug·optional·libgnatcoll-db-bin-dbgsym_21.0.0-6_amd64.deb | ||
2 | ·a14bad4fe3f8d339c640c4e82860dd5d·192232·devel·optional·libgnatcoll-db-bin_21.0.0-6_amd64.deb | ||
3 | · | 1 | ·05727603aff9d8628f488a4f220a0296·396752·debug·optional·libgnatcoll-db-bin-dbgsym_21.0.0-6_amd64.deb |
2 | ·951775d6fd6e2e33e5bd24c4cd852c02·191860·devel·optional·libgnatcoll-db-bin_21.0.0-6_amd64.deb | ||
3 | ·6b76e80b4f890619ecff577cd6b36234·389268·doc·optional·libgnatcoll-db-doc_21.0.0-6_all.deb | ||
4 | ·a9601953ee98b9454cc22aed9d2cbe80·256232·debug·optional·libgnatcoll-postgres1-dbgsym_21.0.0-6_amd64.deb | 4 | ·a9601953ee98b9454cc22aed9d2cbe80·256232·debug·optional·libgnatcoll-postgres1-dbgsym_21.0.0-6_amd64.deb |
5 | ·3ee2d03c54e4e53689f1b8d265cde360·194704·libdevel·optional·libgnatcoll-postgres1-dev_21.0.0-6_amd64.deb | 5 | ·3ee2d03c54e4e53689f1b8d265cde360·194704·libdevel·optional·libgnatcoll-postgres1-dev_21.0.0-6_amd64.deb |
6 | ·26ef128b4265a6b872c44982abddc35d·141328·libs·optional·libgnatcoll-postgres1_21.0.0-6_amd64.deb | 6 | ·26ef128b4265a6b872c44982abddc35d·141328·libs·optional·libgnatcoll-postgres1_21.0.0-6_amd64.deb |
7 | · | 7 | ·d3c463411d6a3b068e3b70f343350a55·2105052·debug·optional·libgnatcoll-sql3-dbgsym_21.0.0-6_amd64.deb |
8 | ·5e17f18a8f8337d458e048b3f93fff23·1190844·libdevel·optional·libgnatcoll-sql3-dev_21.0.0-6_amd64.deb | 8 | ·5e17f18a8f8337d458e048b3f93fff23·1190844·libdevel·optional·libgnatcoll-sql3-dev_21.0.0-6_amd64.deb |
9 | · | 9 | ·4d80b49e40b33efa59cd3210abb25766·1033124·libs·optional·libgnatcoll-sql3_21.0.0-6_amd64.deb |
10 | ·f58f6750d6559689997d5e4a3108dae1·72488·libdevel·optional·libgnatcoll-sqlite19-dev_21.0.0-6_amd64.deb | 10 | ·f58f6750d6559689997d5e4a3108dae1·72488·libdevel·optional·libgnatcoll-sqlite19-dev_21.0.0-6_amd64.deb |
11 | ·0ceb6d40fff0256f3d199aac667dee1f·51052·debug·optional·libgnatcoll-sqlite20-dbgsym_21.0.0-6_amd64.deb | 11 | ·0ceb6d40fff0256f3d199aac667dee1f·51052·debug·optional·libgnatcoll-sqlite20-dbgsym_21.0.0-6_amd64.deb |
12 | ·1c27e703506f4989741479fad425e5d5·36144·libs·optional·libgnatcoll-sqlite20_21.0.0-6_amd64.deb | 12 | ·1c27e703506f4989741479fad425e5d5·36144·libs·optional·libgnatcoll-sqlite20_21.0.0-6_amd64.deb |
13 | ·a2da310770843a3fd565f03dae19601f·821696·debug·optional·libgnatcoll-xref20-dbgsym_21.0.0-6_amd64.deb | 13 | ·a2da310770843a3fd565f03dae19601f·821696·debug·optional·libgnatcoll-xref20-dbgsym_21.0.0-6_amd64.deb |
14 | ·2097cb706a7061ccaa5b453ab2abbaa6·523860·libdevel·optional·libgnatcoll-xref20-dev_21.0.0-6_amd64.deb | 14 | ·2097cb706a7061ccaa5b453ab2abbaa6·523860·libdevel·optional·libgnatcoll-xref20-dev_21.0.0-6_amd64.deb |
15 | ·ae42ce8273e9ea6e4e422bb3546311c0·425060·libs·optional·libgnatcoll-xref20_21.0.0-6_amd64.deb | 15 | ·ae42ce8273e9ea6e4e422bb3546311c0·425060·libs·optional·libgnatcoll-xref20_21.0.0-6_amd64.deb |
Offset 1, 3 lines modified | Offset 1, 3 lines modified | ||
1 | -rw-r--r--···0········0········0········4·2020-12-29·17:08:02.000000·debian-binary | 1 | -rw-r--r--···0········0········0········4·2020-12-29·17:08:02.000000·debian-binary |
2 | -rw-r--r--···0········0········0······9 | 2 | -rw-r--r--···0········0········0······988·2020-12-29·17:08:02.000000·control.tar.xz |
3 | -rw-r--r--···0········0········0···19 | 3 | -rw-r--r--···0········0········0···190680·2020-12-29·17:08:02.000000·data.tar.xz |
Offset 1, 8 lines modified | Offset 1, 8 lines modified | ||
1 | Displaying·notes·found·in:·.note.gnu.build-id | 1 | Displaying·notes·found·in:·.note.gnu.build-id |
2 | ··Owner················Data·size·» Description | 2 | ··Owner················Data·size·» Description |
3 | ··GNU··················0x00000014» NT_GNU_BUILD_ID·(unique·build·ID·bitstring)» ····Build·ID:· | 3 | ··GNU··················0x00000014» NT_GNU_BUILD_ID·(unique·build·ID·bitstring)» ····Build·ID:·13362c2f4027d9640aa539dc6d37851ef88e6b6a |
4 | Displaying·notes·found·in:·.note.ABI-tag | 4 | Displaying·notes·found·in:·.note.ABI-tag |
5 | ··Owner················Data·size·» Description | 5 | ··Owner················Data·size·» Description |
6 | ··GNU··················0x00000010» NT_GNU_ABI_TAG·(ABI·version·tag)» ····OS:·Linux,·ABI:·3.2.0 | 6 | ··GNU··················0x00000010» NT_GNU_ABI_TAG·(ABI·version·tag)» ····OS:·Linux,·ABI:·3.2.0 |
Offset 1, 7 lines modified | Offset 1, 7 lines modified | ||
1 | Hex·dump·of·section·'.gnu_debuglink': | 1 | Hex·dump·of·section·'.gnu_debuglink': |
2 | ··0x00000000·66366261·61373763·35613731·64653839·f6baa77c5a71de89 | ||
3 | ··0x000000 | 2 | ··0x00000000·33363263·32663430·32376439·36343061·362c2f4027d9640a |
3 | ··0x00000010·61353339·64633664·33373835·31656638·a539dc6d37851ef8 | ||
4 | ··0x00000020·3 | 4 | ··0x00000020·38653662·36612e64·65627567·00000000·8e6b6a.debug.... |
5 | ··0x00000030· | 5 | ··0x00000030·8859a7ff····························.Y.. |
Offset 1, 3 lines modified | Offset 1, 3 lines modified | ||
1 | -rw-r--r--···0········0········0········4·2020-12-29·17:08:02.000000·debian-binary | 1 | -rw-r--r--···0········0········0········4·2020-12-29·17:08:02.000000·debian-binary |
2 | -rw-r--r--···0········0········0·····139 | 2 | -rw-r--r--···0········0········0·····1392·2020-12-29·17:08:02.000000·control.tar.xz |
3 | -rw-r--r--···0········0········0···387 | 3 | -rw-r--r--···0········0········0···387684·2020-12-29·17:08:02.000000·data.tar.xz |
Offset 22, 15 lines modified | Offset 22, 15 lines modified | ||
22 | -rw-r--r--···0·root·········(0)·root·········(0)·····4780·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/html/_static/pygments.css | 22 | -rw-r--r--···0·root·········(0)·root·········(0)·····4780·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/html/_static/pygments.css |
23 | -rw-r--r--···0·root·········(0)·root·········(0)·····6236·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/html/_static/sphinxdoc.css | 23 | -rw-r--r--···0·root·········(0)·root·········(0)·····6236·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/html/_static/sphinxdoc.css |
24 | -rw-r--r--···0·root·········(0)·root·········(0)·····3259·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/html/genindex.html | 24 | -rw-r--r--···0·root·········(0)·root·········(0)·····3259·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/html/genindex.html |
25 | -rw-r--r--···0·root·········(0)·root·········(0)·····7331·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/html/index.html | 25 | -rw-r--r--···0·root·········(0)·root·········(0)·····7331·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/html/index.html |
26 | -rw-r--r--···0·root·········(0)·root·········(0)······607·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/html/objects.inv | 26 | -rw-r--r--···0·root·········(0)·root·········(0)······607·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/html/objects.inv |
27 | -rw-r--r--···0·root·········(0)·root·········(0)·····3013·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/html/search.html | 27 | -rw-r--r--···0·root·········(0)·root·········(0)·····3013·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/html/search.html |
28 | -rw-r--r--···0·root·········(0)·root·········(0)····14942·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/html/searchindex.js | 28 | -rw-r--r--···0·root·········(0)·root·········(0)····14942·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/html/searchindex.js |
29 | -rw-r--r--···0·root·········(0)·root·········(0)···180 | 29 | -rw-r--r--···0·root·········(0)·root·········(0)···180430·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/html/sql.html |
30 | -rw-r--r--···0·root·········(0)·root·········(0)····33972·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/html/xref.html | 30 | -rw-r--r--···0·root·········(0)·root·········(0)····33972·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/html/xref.html |
31 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/text/ | 31 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/text/ |
32 | -rw-r--r--···0·root·········(0)·root·········(0)·····1169·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/text/index.txt | 32 | -rw-r--r--···0·root·········(0)·root·········(0)·····1169·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/text/index.txt |
33 | -rw-r--r--···0·root·········(0)·root·········(0)····31506·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/text/sql.txt.gz | 33 | -rw-r--r--···0·root·········(0)·root·········(0)····31506·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/text/sql.txt.gz |
34 | -rw-r--r--···0·root·········(0)·root·········(0)·····6534·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/text/xref.txt.gz | 34 | -rw-r--r--···0·root·········(0)·root·········(0)·····6534·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-db-doc/text/xref.txt.gz |
35 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/share/doc-base/ | 35 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/share/doc-base/ |
36 | -rw-r--r--···0·root·········(0)·root·········(0)······670·2020-11-16·15:10:30.000000·./usr/share/doc-base/gnatcoll-db | 36 | -rw-r--r--···0·root·········(0)·root·········(0)······670·2020-11-16·15:10:30.000000·./usr/share/doc-base/gnatcoll-db |
Offset 69, 29 lines modified | Offset 69, 29 lines modified | ||
69 | database,·this·place·is·organized·into·tables,·each·of·which·contains | 69 | database,·this·place·is·organized·into·tables,·each·of·which·contains |
70 | a·number·of·fields.·A·row·in·a·table·represents·one·object.·The·set·of | 70 | a·number·of·fields.·A·row·in·a·table·represents·one·object.·The·set·of |
71 | tables·and·their·fields·is·called·the·<strong>schema</strong>·of·the·database.</p></li> | 71 | tables·and·their·fields·is·called·the·<strong>schema</strong>·of·the·database.</p></li> |
72 | </ul> | 72 | </ul> |
73 | <p>Traditionally,·writing·the·SQL·queries·is·done·inline:·special·markers | 73 | <p>Traditionally,·writing·the·SQL·queries·is·done·inline:·special·markers |
74 | are·inserted·into·your·code·to·delimit·sections·that·contain·SQL·code·(as | 74 | are·inserted·into·your·code·to·delimit·sections·that·contain·SQL·code·(as |
75 | opposed·to·Ada·code),·and·these·are·then·preprocessed·to·generate·actual | 75 | opposed·to·Ada·code),·and·these·are·then·preprocessed·to·generate·actual |
76 | code.·This·isn | 76 | code.·This·isn't·the·approach·chosen·in·GNATColl:·there·are |
77 | several·drawbacks,·in·particular·your·code·is·no·longer·Ada·and·various | 77 | several·drawbacks,·in·particular·your·code·is·no·longer·Ada·and·various |
78 | tools·will·choke·on·it.</p> | 78 | tools·will·choke·on·it.</p> |
79 | <p>The·other·usual·approach·is·to·write·the·queries·as·strings,·which·are | 79 | <p>The·other·usual·approach·is·to·write·the·queries·as·strings,·which·are |
80 | passed,·via·a·DBMS-specific·API,·to·the·DBMS·server.·This·approach·is | 80 | passed,·via·a·DBMS-specific·API,·to·the·DBMS·server.·This·approach·is |
81 | very·fragile:</p> | 81 | very·fragile:</p> |
82 | <ul·class="simple"> | 82 | <ul·class="simple"> |
83 | <li><p>The·string·might·not·contain·<strong>well-formed</strong>·SQL.·This·will | 83 | <li><p>The·string·might·not·contain·<strong>well-formed</strong>·SQL.·This·will |
84 | unfortunately·only·be·detected·at·run·time·when·the·DBMS·complains.</p></li> | 84 | unfortunately·only·be·detected·at·run·time·when·the·DBMS·complains.</p></li> |
85 | <li><p>This·is·not·<strong>type·safe</strong>.·You·might·be·comparing·a·text·field | 85 | <li><p>This·is·not·<strong>type·safe</strong>.·You·might·be·comparing·a·text·field |
86 | with·an·integer,·for·instance.·In·some·cases,·the·DBMS·will·accept·that | 86 | with·an·integer,·for·instance.·In·some·cases,·the·DBMS·will·accept·that |
87 | (sqlite·for·instance),·but·in·some·other·cases·it·won | 87 | (sqlite·for·instance),·but·in·some·other·cases·it·won't·(PostgreSQL).·The |
88 | result·might·then·either·raise·an·error,·or·return·an·empty·list.</p></li> | 88 | result·might·then·either·raise·an·error,·or·return·an·empty·list.</p></li> |
89 | <li><p>There·is·a·risk·of·<strong>SQL·injection</strong>.·Assuming·the·string·is | 89 | <li><p>There·is·a·risk·of·<strong>SQL·injection</strong>.·Assuming·the·string·is |
90 | constructed·dynamically·(using·Ada | 90 | constructed·dynamically·(using·Ada's·<cite>&</cite>·operator),·it·might·be·easy |
91 | for·a·user·to·pass·a·string·that·breaks·the·query,·and·even·destroys | 91 | for·a·user·to·pass·a·string·that·breaks·the·query,·and·even·destroys |
92 | things·in·the·database.</p></li> | 92 | things·in·the·database.</p></li> |
93 | <li><p>As·discussed·previously,·the·SQL·code·might·not·be·<strong>portable</strong> | 93 | <li><p>As·discussed·previously,·the·SQL·code·might·not·be·<strong>portable</strong> |
94 | across·DBMS.·For·instance,·creating·an·automatically·increment·integer | 94 | across·DBMS.·For·instance,·creating·an·automatically·increment·integer |
95 | primary·key·in·a·table·is·DBMS·specific.</p></li> | 95 | primary·key·in·a·table·is·DBMS·specific.</p></li> |
96 | <li><p>The·string·is·fragile·if·the·database·<strong>schema·changes</strong>.·Finding | 96 | <li><p>The·string·is·fragile·if·the·database·<strong>schema·changes</strong>.·Finding |
97 | whether·a·schema·change·impacts·any·of·the·queries·requires·looking·at | 97 | whether·a·schema·change·impacts·any·of·the·queries·requires·looking·at |
Offset 170, 15 lines modified | Offset 170, 15 lines modified | ||
170 | </div> | 170 | </div> |
171 | <div·class="section"·id="database-example"> | 171 | <div·class="section"·id="database-example"> |
172 | <span·id="id2"></span><h2><span·class="section-number">1.2.·</span>Database·example<a·class="headerlink"·href="#database-example"·title="Permalink·to·this·headline">¶</a></h2> | 172 | <span·id="id2"></span><h2><span·class="section-number">1.2.·</span>Database·example<a·class="headerlink"·href="#database-example"·title="Permalink·to·this·headline">¶</a></h2> |
173 | <p>This·section·describes·an·example·that·will·be·extended·throughout·this | 173 | <p>This·section·describes·an·example·that·will·be·extended·throughout·this |
174 | chapter.·We·will·build·an·application·that·represents·a·library.·Such | 174 | chapter.·We·will·build·an·application·that·represents·a·library.·Such |
175 | a·library·contains·various·media·(books·and·DVDs·for·instance),·and | 175 | a·library·contains·various·media·(books·and·DVDs·for·instance),·and |
176 | customers.·A·customer·can·borrow·multiple·media·at·the·same·time,·but·a | 176 | customers.·A·customer·can·borrow·multiple·media·at·the·same·time,·but·a |
177 | media·is·either·at·a·customer | 177 | media·is·either·at·a·customer's,·or·still·in·the·library.</p> |
178 | <p>The·GNATColl·distribution·includes·an·example·directory·which | 178 | <p>The·GNATColl·distribution·includes·an·example·directory·which |
179 | contains·all·the·code·and·data·for·this·example.</p> | 179 | contains·all·the·code·and·data·for·this·example.</p> |
180 | </div> | 180 | </div> |
181 | <div·class="section"·id="database-schema"> | 181 | <div·class="section"·id="database-schema"> |
182 | <span·id="id3"></span><h2><span·class="section-number">1.3.·</span>Database·schema<a·class="headerlink"·href="#database-schema"·title="Permalink·to·this·headline">¶</a></h2> | 182 | <span·id="id3"></span><h2><span·class="section-number">1.3.·</span>Database·schema<a·class="headerlink"·href="#database-schema"·title="Permalink·to·this·headline">¶</a></h2> |
183 | <p>As·was·mentioned·earlier·(<a·class="reference·internal"·href="#database-abstraction-layers"><span·class="std·std-ref">Database·Abstraction·Layers</span></a>), | 183 | <p>As·was·mentioned·earlier·(<a·class="reference·internal"·href="#database-abstraction-layers"><span·class="std·std-ref">Database·Abstraction·Layers</span></a>), |
184 | GNATColl·relies·on·automatic·code·generation·to·provide·a·type | 184 | GNATColl·relies·on·automatic·code·generation·to·provide·a·type |
Offset 189, 15 lines modified | Offset 189, 15 lines modified | ||
189 | <p>This·tool·is·able·to·output·various·kind·of·information,·and·will·be·fully | 189 | <p>This·tool·is·able·to·output·various·kind·of·information,·and·will·be·fully |
190 | described·later·(<a·class="reference·internal"·href="#the-gnatcoll-db2ada-tool"><span·class="std·std-ref">The·gnatcoll_db2ada·tool</span></a>).·However,·the·input | 190 | described·later·(<a·class="reference·internal"·href="#the-gnatcoll-db2ada-tool"><span·class="std·std-ref">The·gnatcoll_db2ada·tool</span></a>).·However,·the·input |
191 | is·always·the·same:·this·is·the·schema·of·your·database,·that·is·the·list | 191 | is·always·the·same:·this·is·the·schema·of·your·database,·that·is·the·list |
192 | of·tables·and·fields·that·make·up·your·database.·There·exist·two·ways·to | 192 | of·tables·and·fields·that·make·up·your·database.·There·exist·two·ways·to |
193 | provide·that·information:</p> | 193 | provide·that·information:</p> |
194 | <ul> | 194 | <ul> |
195 | <li><p>From·a·running·database</p> | 195 | <li><p>From·a·running·database</p> |
196 | <p>If·you·pass·the·DBMS·vendor·(postgresql,·sqlite, | 196 | <p>If·you·pass·the·DBMS·vendor·(postgresql,·sqlite,...)·and·the·connection |
197 | parameters·to·<cite>gnatcoll_db2ada</cite>,·it·is·able·to·query·the·schema·on | 197 | parameters·to·<cite>gnatcoll_db2ada</cite>,·it·is·able·to·query·the·schema·on |
198 | its·own.·However,·this·should·not·be·the·preferred·method:·this·is·similar | 198 | its·own.·However,·this·should·not·be·the·preferred·method:·this·is·similar |
199 | to·reverse·engineering·assembly·code·into·the·original·high-level·code,·and | 199 | to·reverse·engineering·assembly·code·into·the·original·high-level·code,·and |
200 | some·semantic·information·will·be·missing.·For·instance,·in·SQL | 200 | some·semantic·information·will·be·missing.·For·instance,·in·SQL |
201 | we·have·to·create·tables·just·to·represent·the·many-to-many·relationships. | 201 | we·have·to·create·tables·just·to·represent·the·many-to-many·relationships. |
202 | These·extra·tables·are·part·of·the·implementation·of·the·schema,·but·are | 202 | These·extra·tables·are·part·of·the·implementation·of·the·schema,·but·are |
203 | just·noise·when·it·comes·to·the·semantics·of·the·schema.·For·this·reason, | 203 | just·noise·when·it·comes·to·the·semantics·of·the·schema.·For·this·reason, |
Offset 210, 101 lines modified | Offset 210, 101 lines modified | ||
210 | provides·additional·capabilities·that·do·not·exist·when·reverse-engineering | 210 | provides·additional·capabilities·that·do·not·exist·when·reverse-engineering |
211 | an·existing·database,·for·instance·the·ability·to·use·name·to·represent | 211 | an·existing·database,·for·instance·the·ability·to·use·name·to·represent |
212 | reverse·relationships·for·foreign·keys·(see·below·and·the·ORM).</p> | 212 | reverse·relationships·for·foreign·keys·(see·below·and·the·ORM).</p> |
213 | <p>The·most·convenient·editor·for·this·file·is·Emacs,·using·the·<cite>org-mode</cite> | 213 | <p>The·most·convenient·editor·for·this·file·is·Emacs,·using·the·<cite>org-mode</cite> |
214 | which·provides·convenient·key·shortcuts·for·editing·the·contents·of·ASCII | 214 | which·provides·convenient·key·shortcuts·for·editing·the·contents·of·ASCII |
215 | tables.·But·any·text·editor·will·do,·and·you·do·not·need·to·align·the·columns | 215 | tables.·But·any·text·editor·will·do,·and·you·do·not·need·to·align·the·columns |
216 | in·this·file.</p> | 216 | in·this·file.</p> |
217 | <p>All·lines·starting·with·a·hash·sign·( | 217 | <p>All·lines·starting·with·a·hash·sign·('#')·will·be·ignored.</p> |
218 | <p>This·file·is·a·collection·of·ASCII·tables,·each·of·which·relates·to·one·table | 218 | <p>This·file·is·a·collection·of·ASCII·tables,·each·of·which·relates·to·one·table |
219 | or·one·SQL·view·in·your·database.·The·paragraphs·start·with·a·line | 219 | or·one·SQL·view·in·your·database.·The·paragraphs·start·with·a·line |
220 | containing:</p> | 220 | containing:</p> |
221 | <div·class="highlight-ada·notranslate"><div·class="highlight"><pre><span></span>table·::= | 221 | <div·class="highlight-ada·notranslate"><div·class="highlight"><pre><span></span>table·::= |
222 | ···'|'·('ABSTRACT')?·('TABLE'|'VIEW')·['('·supertable·')'] | 222 | ···'|'·('ABSTRACT')?·('TABLE'|'VIEW')·['('·supertable·')'] |
223 | ···'|'·<name>·'|'·<name_row> | 223 | ···'|'·<name>·'|'·<name_row> |
224 | </pre></div> | 224 | </pre></div> |
225 | </div> | 225 | </div> |
226 | <p> | 226 | <p>"name"·is·the·name·of·the·table.·The·third·pipe·and·third·column·are·optional, |
227 | and·should·be·used·to·specify·the·name·for·the·element·represented·by·a·single | 227 | and·should·be·used·to·specify·the·name·for·the·element·represented·by·a·single |
228 | row.·For·instance,·if·the·table·is·called· | 228 | row.·For·instance,·if·the·table·is·called·"books",·the·third·column·could |
229 | contain· | 229 | contain·"book".·This·is·used·when·generating·objects·for·use·with |
230 | <cite>GNATCOLL.SQL.ORM</cite>.</p> | 230 | <cite>GNATCOLL.SQL.ORM</cite>.</p> |
231 | <p>If·the·first·line·starts·with·the·keyword·<cite>ABSTRACT</cite>,·then·no·instance | 231 | <p>If·the·first·line·starts·with·the·keyword·<cite>ABSTRACT</cite>,·then·no·instance |
232 | of·that·table·actually·exists·in·the·database.·This·is·used·in·the·context | 232 | of·that·table·actually·exists·in·the·database.·This·is·used·in·the·context |
233 | of·table·inheritance,·so·define·shared·fields·only·once·among·multiple·tables.</p> | 233 | of·table·inheritance,·so·define·shared·fields·only·once·among·multiple·tables.</p> |
234 | <p>The·keyword·<cite>TABLE</cite>·can·be·followed·by·the·name·of·a·table·from·which·it | 234 | <p>The·keyword·<cite>TABLE</cite>·can·be·followed·by·the·name·of·a·table·from·which·it |
235 | inherits·the·fields.·Currently,·that·supertable·must·be·abstract,·and·the | 235 | inherits·the·fields.·Currently,·that·supertable·must·be·abstract,·and·the |
236 | fields·declared·in·that·table·are·simply·duplicated·in·the·new·table.</p> | 236 | fields·declared·in·that·table·are·simply·duplicated·in·the·new·table.</p> |
237 | <p>Following·the·declaration·of·the·table,·the·file·then·describe·their·fields, | 237 | <p>Following·the·declaration·of·the·table,·the·file·then·describe·their·fields, |
238 | each·on·a·separate·line.·Each·of·these·lines·must·start·with·a·pipe | 238 | each·on·a·separate·line.·Each·of·these·lines·must·start·with·a·pipe |
239 | character·( | 239 | character·("|"),·and·contain·a·number·of·pipe-separated·fields.·The·order·of |
240 | the·fields·is·always·given·by·the·following·grammar:</p> | 240 | the·fields·is·always·given·by·the·following·grammar:</p> |
241 | <div·class="highlight-ada·notranslate"><div·class="highlight"><pre><span></span>fields·::= | 241 | <div·class="highlight-ada·notranslate"><div·class="highlight"><pre><span></span>fields·::= |
242 | ···'|'·<name>·'|'·<type> | 242 | ···'|'·<name>·'|'·<type> |
243 | ···'|'·('PK'|''|'NULL'|'NOT·NULL'|'INDEX'|'UNIQUE'|'NOCASE') | 243 | ···'|'·('PK'|''|'NULL'|'NOT·NULL'|'INDEX'|'UNIQUE'|'NOCASE') |
244 | ···'|'·[default]·'|'·[doc]·'|' | 244 | ···'|'·[default]·'|'·[doc]·'|' |
245 | </pre></div> | 245 | </pre></div> |
246 | </div> | 246 | </div> |
247 | <p>The·type·of·the·field·is·the·SQL·type·(“INTEGER”,·“TEXT”,·“TIMESTAMP”,·“DATE”, | ||
248 | 247 | <p>The·type·of·the·field·is·the·SQL·type·("INTEGER",·"TEXT",·"TIMESTAMP",·"DATE", | |
248 | "DOUBLE·PRECISION",·"MONEY",·"BOOLEAN",·"TIME",·"CHARACTER(1)").·Any·maximal | ||
249 | length·can·be·specified·for·strings,·not·just·1·as·in·this·example. | 249 | length·can·be·specified·for·strings,·not·just·1·as·in·this·example. |
250 | The·tool·will·automatically·convert·these·to | 250 | The·tool·will·automatically·convert·these·to |
251 | Ada·when·generating·Ada·code.·A·special·type·( | 251 | Ada·when·generating·Ada·code.·A·special·type·("AUTOINCREMENT")·is·an·integer |
252 | that·is·automatically·incremented·according·to·available·ids·in·the·table. | 252 | that·is·automatically·incremented·according·to·available·ids·in·the·table. |
253 | The·exact·type·used·will·depend·on·the·specific·DBMS.</p> | 253 | The·exact·type·used·will·depend·on·the·specific·DBMS.</p> |
254 | <p>The·property· | 254 | <p>The·property·'NOCASE'·indicates·that·comparison·should·be·case·insensitive |
255 | for·this·field.</p> | 255 | for·this·field.</p> |
256 | <p>If·the·field·is·a·foreign·key·(that·is·a·value·that·must·correspond·to·a·row | 256 | <p>If·the·field·is·a·foreign·key·(that·is·a·value·that·must·correspond·to·a·row |
257 | in·another·table),·you·can·use·the·special·syntax·for·its·type:</p> | 257 | in·another·table),·you·can·use·the·special·syntax·for·its·type:</p> |
258 | <div·class="highlight-ada·notranslate"><div·class="highlight"><pre><span></span>fk_type·::=·'FK'·<table_name>·[·'('·<reverse_name>·')'·] | 258 | <div·class="highlight-ada·notranslate"><div·class="highlight"><pre><span></span>fk_type·::=·'FK'·<table_name>·[·'('·<reverse_name>·')'·] |
259 | </pre></div> | 259 | </pre></div> |
260 | </div> | 260 | </div> |
261 | <p>As·you·can·see,·the·type·of·the·field·is·not·specified·explicitly,·but·will | 261 | <p>As·you·can·see,·the·type·of·the·field·is·not·specified·explicitly,·but·will |
262 | always·be·that·of·the·foreign·table | 262 | always·be·that·of·the·foreign·table's·primary·key.·With·this·syntax,·the |
263 | foreign·table·must·have·a·single·field·for·its·primary·key.·GNATColl | 263 | foreign·table·must·have·a·single·field·for·its·primary·key.·GNATColl |
264 | does·not·force·a·specific·order·for·the·declaration·of·tables:·if·is·valid·to | 264 | does·not·force·a·specific·order·for·the·declaration·of·tables:·if·is·valid·to |
265 | have·a·foreign·key·to·a·table·that·hasn | 265 | have·a·foreign·key·to·a·table·that·hasn't·been·declared·yet.·There·is·however |
266 | a·restriction·if·you·use·the·model·to·create·a·sqlite·database·(through·the | 266 | a·restriction·if·you·use·the·model·to·create·a·sqlite·database·(through·the |
267 | <cite>-createdb</cite>·switch·of·<cite>gnatcoll_db2ada</cite>):·in·this·case,·a·reference | 267 | <cite>-createdb</cite>·switch·of·<cite>gnatcoll_db2ada</cite>):·in·this·case,·a·reference |
268 | to·a·table·that·hasn | 268 | to·a·table·that·hasn't·been·defined·yet·may·not·be·not·through·a·field·marked |
269 | as·NOT·NULL.·This·is·a·limitation·of·the·sqlite·backend·itself.·The·solution | 269 | as·NOT·NULL.·This·is·a·limitation·of·the·sqlite·backend·itself.·The·solution |
270 | in·this·case·is·to·reorder·the·declaration·of·tables,·or·drop·the·NOT·NULL | 270 | in·this·case·is·to·reorder·the·declaration·of·tables,·or·drop·the·NOT·NULL |
271 | constraint.</p> | 271 | constraint.</p> |
272 | <p>Another·restriction·is·that·a·foreign·key·that·is·also·a·primary·key·must | 272 | <p>Another·restriction·is·that·a·foreign·key·that·is·also·a·primary·key·must |
273 | reference·a·table·that·has·already·been·defined.·You·need·to·reorder·the | 273 | reference·a·table·that·has·already·been·defined.·You·need·to·reorder·the |
Max diff block lines reached; 71500/81542 bytes (87.68%) of diff not shown. |
Offset 36, 27 lines modified | Offset 36, 27 lines modified | ||
36 | ······document·refers·to·this·meaning.·In·a·relational·database,·this·place·is | 36 | ······document·refers·to·this·meaning.·In·a·relational·database,·this·place·is |
37 | ······organized·into·tables,·each·of·which·contains·a·number·of·fields.·A·row | 37 | ······organized·into·tables,·each·of·which·contains·a·number·of·fields.·A·row |
38 | ······in·a·table·represents·one·object.·The·set·of·tables·and·their·fields·is | 38 | ······in·a·table·represents·one·object.·The·set·of·tables·and·their·fields·is |
39 | ······called·the·schema·of·the·database. | 39 | ······called·the·schema·of·the·database. |
40 | Traditionally,·writing·the·SQL·queries·is·done·inline:·special·markers·are | 40 | Traditionally,·writing·the·SQL·queries·is·done·inline:·special·markers·are |
41 | inserted·into·your·code·to·delimit·sections·that·contain·SQL·code·(as·opposed | 41 | inserted·into·your·code·to·delimit·sections·that·contain·SQL·code·(as·opposed |
42 | to·Ada·code),·and·these·are·then·preprocessed·to·generate·actual·code.·This | 42 | to·Ada·code),·and·these·are·then·preprocessed·to·generate·actual·code.·This |
43 | isn | 43 | isn't·the·approach·chosen·in·GNATColl:·there·are·several·drawbacks,·in |
44 | particular·your·code·is·no·longer·Ada·and·various·tools·will·choke·on·it. | 44 | particular·your·code·is·no·longer·Ada·and·various·tools·will·choke·on·it. |
45 | The·other·usual·approach·is·to·write·the·queries·as·strings,·which·are·passed, | 45 | The·other·usual·approach·is·to·write·the·queries·as·strings,·which·are·passed, |
46 | via·a·DBMS-specific·API,·to·the·DBMS·server.·This·approach·is·very·fragile: | 46 | via·a·DBMS-specific·API,·to·the·DBMS·server.·This·approach·is·very·fragile: |
47 | ····*·The·string·might·not·contain·well-formed·SQL.·This·will·unfortunately | 47 | ····*·The·string·might·not·contain·well-formed·SQL.·This·will·unfortunately |
48 | ······only·be·detected·at·run·time·when·the·DBMS·complains. | 48 | ······only·be·detected·at·run·time·when·the·DBMS·complains. |
49 | ····*·This·is·not·type·safe.·You·might·be·comparing·a·text·field·with·an | 49 | ····*·This·is·not·type·safe.·You·might·be·comparing·a·text·field·with·an |
50 | ······integer,·for·instance.·In·some·cases,·the·DBMS·will·accept·that·(sqlite | 50 | ······integer,·for·instance.·In·some·cases,·the·DBMS·will·accept·that·(sqlite |
51 | ······for·instance),·but·in·some·other·cases·it·won | 51 | ······for·instance),·but·in·some·other·cases·it·won't·(PostgreSQL).·The·result |
52 | ······ | 52 | ······might·then·either·raise·an·error,·or·return·an·empty·list. |
53 | ····*·There·is·a·risk·of·SQL·injection.·Assuming·the·string·is·constructed | 53 | ····*·There·is·a·risk·of·SQL·injection.·Assuming·the·string·is·constructed |
54 | ······dynamically·(using·Ada | 54 | ······dynamically·(using·Ada's&operator),·it·might·be·easy·for·a·user·to·pass·a |
55 | ······ | 55 | ······string·that·breaks·the·query,·and·even·destroys·things·in·the·database. |
56 | ····*·As·discussed·previously,·the·SQL·code·might·not·be·portable·across·DBMS. | 56 | ····*·As·discussed·previously,·the·SQL·code·might·not·be·portable·across·DBMS. |
57 | ······For·instance,·creating·an·automatically·increment·integer·primary·key·in | 57 | ······For·instance,·creating·an·automatically·increment·integer·primary·key·in |
58 | ······a·table·is·DBMS·specific. | 58 | ······a·table·is·DBMS·specific. |
59 | ····*·The·string·is·fragile·if·the·database·schema·changes.·Finding·whether·a | 59 | ····*·The·string·is·fragile·if·the·database·schema·changes.·Finding·whether·a |
60 | ······schema·change·impacts·any·of·the·queries·requires·looking·at·all·the | 60 | ······schema·change·impacts·any·of·the·queries·requires·looking·at·all·the |
61 | ······strings·in·your·application. | 61 | ······strings·in·your·application. |
62 | ····*·performance·might·be·an·issue.·Whenever·you·execute·a·query,·the·DBMS | 62 | ····*·performance·might·be·an·issue.·Whenever·you·execute·a·query,·the·DBMS |
Offset 126, 30 lines modified | Offset 126, 30 lines modified | ||
126 | with·each·other.·You·could·connect·to·the·database,·and·then·write·some·queries | 126 | with·each·other.·You·could·connect·to·the·database,·and·then·write·some·queries |
127 | using·GNATCOLL.SQL·and·some·using·GNATCOLL.SQL.ORM. | 127 | using·GNATCOLL.SQL·and·some·using·GNATCOLL.SQL.ORM. |
128 | *****·1.2.·Database·example¶·***** | 128 | *****·1.2.·Database·example¶·***** |
129 | This·section·describes·an·example·that·will·be·extended·throughout·this | 129 | This·section·describes·an·example·that·will·be·extended·throughout·this |
130 | chapter.·We·will·build·an·application·that·represents·a·library.·Such·a·library | 130 | chapter.·We·will·build·an·application·that·represents·a·library.·Such·a·library |
131 | contains·various·media·(books·and·DVDs·for·instance),·and·customers.·A·customer | 131 | contains·various·media·(books·and·DVDs·for·instance),·and·customers.·A·customer |
132 | can·borrow·multiple·media·at·the·same·time,·but·a·media·is·either·at·a | 132 | can·borrow·multiple·media·at·the·same·time,·but·a·media·is·either·at·a |
133 | customer | 133 | customer's,·or·still·in·the·library. |
134 | The·GNATColl·distribution·includes·an·example·directory·which·contains·all·the | 134 | The·GNATColl·distribution·includes·an·example·directory·which·contains·all·the |
135 | code·and·data·for·this·example. | 135 | code·and·data·for·this·example. |
136 | *****·1.3.·Database·schema¶·***** | 136 | *****·1.3.·Database·schema¶·***** |
137 | As·was·mentioned·earlier·(Database_Abstraction_Layers),·GNATColl·relies·on | 137 | As·was·mentioned·earlier·(Database_Abstraction_Layers),·GNATColl·relies·on |
138 | automatic·code·generation·to·provide·a·type·safe·interface·to·your·database. | 138 | automatic·code·generation·to·provide·a·type·safe·interface·to·your·database. |
139 | This·code·is·generated·by·an·external·tool·calledgnatcoll_db2ada.·In·some | 139 | This·code·is·generated·by·an·external·tool·calledgnatcoll_db2ada.·In·some |
140 | cases,·this·tool·requires·an·installation·of·python·(www.python.org)·on·your | 140 | cases,·this·tool·requires·an·installation·of·python·(www.python.org)·on·your |
141 | machine,·since·part·of·the·code·is·written·in·that·language. | 141 | machine,·since·part·of·the·code·is·written·in·that·language. |
142 | This·tool·is·able·to·output·various·kind·of·information,·and·will·be·fully | 142 | This·tool·is·able·to·output·various·kind·of·information,·and·will·be·fully |
143 | described·later·(The_gnatcoll_db2ada_tool).·However,·the·input·is·always·the | 143 | described·later·(The_gnatcoll_db2ada_tool).·However,·the·input·is·always·the |
144 | same:·this·is·the·schema·of·your·database,·that·is·the·list·of·tables·and | 144 | same:·this·is·the·schema·of·your·database,·that·is·the·list·of·tables·and |
145 | fields·that·make·up·your·database.·There·exist·two·ways·to·provide·that | 145 | fields·that·make·up·your·database.·There·exist·two·ways·to·provide·that |
146 | information: | 146 | information: |
147 | ····*·From·a·running·database | 147 | ····*·From·a·running·database |
148 | ······If·you·pass·the·DBMS·vendor·(postgresql,·sqlite, | 148 | ······If·you·pass·the·DBMS·vendor·(postgresql,·sqlite,...)·and·the·connection |
149 | ······parameters·tognatcoll_db2ada,·it·is·able·to·query·the·schema·on·its·own. | 149 | ······parameters·tognatcoll_db2ada,·it·is·able·to·query·the·schema·on·its·own. |
150 | ······However,·this·should·not·be·the·preferred·method:·this·is·similar·to | 150 | ······However,·this·should·not·be·the·preferred·method:·this·is·similar·to |
151 | ······reverse·engineering·assembly·code·into·the·original·high-level·code,·and | 151 | ······reverse·engineering·assembly·code·into·the·original·high-level·code,·and |
152 | ······some·semantic·information·will·be·missing.·For·instance,·in·SQL·we·have | 152 | ······some·semantic·information·will·be·missing.·For·instance,·in·SQL·we·have |
153 | ······to·create·tables·just·to·represent·the·many-to-many·relationships.·These | 153 | ······to·create·tables·just·to·represent·the·many-to-many·relationships.·These |
154 | ······extra·tables·are·part·of·the·implementation·of·the·schema,·but·are·just | 154 | ······extra·tables·are·part·of·the·implementation·of·the·schema,·but·are·just |
155 | ······noise·when·it·comes·to·the·semantics·of·the·schema.·For·this·reason,·it | 155 | ······noise·when·it·comes·to·the·semantics·of·the·schema.·For·this·reason,·it |
Offset 161, 96 lines modified | Offset 161, 95 lines modified | ||
161 | ······additional·capabilities·that·do·not·exist·when·reverse-engineering·an | 161 | ······additional·capabilities·that·do·not·exist·when·reverse-engineering·an |
162 | ······existing·database,·for·instance·the·ability·to·use·name·to·represent | 162 | ······existing·database,·for·instance·the·ability·to·use·name·to·represent |
163 | ······reverse·relationships·for·foreign·keys·(see·below·and·the·ORM). | 163 | ······reverse·relationships·for·foreign·keys·(see·below·and·the·ORM). |
164 | ······The·most·convenient·editor·for·this·file·is·Emacs,·using·theorg-modewhich | 164 | ······The·most·convenient·editor·for·this·file·is·Emacs,·using·theorg-modewhich |
165 | ······provides·convenient·key·shortcuts·for·editing·the·contents·of·ASCII | 165 | ······provides·convenient·key·shortcuts·for·editing·the·contents·of·ASCII |
166 | ······tables.·But·any·text·editor·will·do,·and·you·do·not·need·to·align·the | 166 | ······tables.·But·any·text·editor·will·do,·and·you·do·not·need·to·align·the |
167 | ······columns·in·this·file. | 167 | ······columns·in·this·file. |
168 | ······All·lines·starting·with·a·hash·sign·( | 168 | ······All·lines·starting·with·a·hash·sign·('#')·will·be·ignored. |
169 | ······This·file·is·a·collection·of·ASCII·tables,·each·of·which·relates·to·one | 169 | ······This·file·is·a·collection·of·ASCII·tables,·each·of·which·relates·to·one |
170 | ······table·or·one·SQL·view·in·your·database.·The·paragraphs·start·with·a·line | 170 | ······table·or·one·SQL·view·in·your·database.·The·paragraphs·start·with·a·line |
171 | ······containing: | 171 | ······containing: |
172 | ······table·::= | 172 | ······table·::= |
173 | ·········'|'·('ABSTRACT')?·('TABLE'|'VIEW')·['('·supertable·')'] | 173 | ·········'|'·('ABSTRACT')?·('TABLE'|'VIEW')·['('·supertable·')'] |
174 | ·········'|'·<name>·'|'·<name_row> | 174 | ·········'|'·<name>·'|'·<name_row> |
175 | ······ | 175 | ······"name"·is·the·name·of·the·table.·The·third·pipe·and·third·column·are |
176 | ······optional,·and·should·be·used·to·specify·the·name·for·the·element | 176 | ······optional,·and·should·be·used·to·specify·the·name·for·the·element |
177 | ······represented·by·a·single·row.·For·instance,·if·the·table·is·called | 177 | ······represented·by·a·single·row.·For·instance,·if·the·table·is·called |
178 | ······ | 178 | ······"books",·the·third·column·could·contain·"book".·This·is·used·when |
179 | ······generating·objects·for·use·withGNATCOLL.SQL.ORM. | 179 | ······generating·objects·for·use·withGNATCOLL.SQL.ORM. |
180 | ······If·the·first·line·starts·with·the·keywordABSTRACT,·then·no·instance·of | 180 | ······If·the·first·line·starts·with·the·keywordABSTRACT,·then·no·instance·of |
181 | ······that·table·actually·exists·in·the·database.·This·is·used·in·the·context | 181 | ······that·table·actually·exists·in·the·database.·This·is·used·in·the·context |
182 | ······of·table·inheritance,·so·define·shared·fields·only·once·among·multiple | 182 | ······of·table·inheritance,·so·define·shared·fields·only·once·among·multiple |
183 | ······tables. | 183 | ······tables. |
184 | ······The·keywordTABLEcan·be·followed·by·the·name·of·a·table·from·which·it | 184 | ······The·keywordTABLEcan·be·followed·by·the·name·of·a·table·from·which·it |
185 | ······inherits·the·fields.·Currently,·that·supertable·must·be·abstract,·and·the | 185 | ······inherits·the·fields.·Currently,·that·supertable·must·be·abstract,·and·the |
186 | ······fields·declared·in·that·table·are·simply·duplicated·in·the·new·table. | 186 | ······fields·declared·in·that·table·are·simply·duplicated·in·the·new·table. |
187 | ······Following·the·declaration·of·the·table,·the·file·then·describe·their | 187 | ······Following·the·declaration·of·the·table,·the·file·then·describe·their |
188 | ······fields,·each·on·a·separate·line.·Each·of·these·lines·must·start·with·a | 188 | ······fields,·each·on·a·separate·line.·Each·of·these·lines·must·start·with·a |
189 | ······pipe·character·( | 189 | ······pipe·character·("|"),·and·contain·a·number·of·pipe-separated·fields.·The |
190 | ······ | 190 | ······order·of·the·fields·is·always·given·by·the·following·grammar: |
191 | ······fields·::= | 191 | ······fields·::= |
192 | ·········'|'·<name>·'|'·<type> | 192 | ·········'|'·<name>·'|'·<type> |
193 | ·········'|'·('PK'|''|'NULL'|'NOT·NULL'|'INDEX'|'UNIQUE'|'NOCASE') | 193 | ·········'|'·('PK'|''|'NULL'|'NOT·NULL'|'INDEX'|'UNIQUE'|'NOCASE') |
194 | ·········'|'·[default]·'|'·[doc]·'|' | 194 | ·········'|'·[default]·'|'·[doc]·'|' |
195 | ······The·type·of·the·field·is·the·SQL·type·( | 195 | ······The·type·of·the·field·is·the·SQL·type·("INTEGER",·"TEXT",·"TIMESTAMP", |
196 | ······"DATE",·"DOUBLE·PRECISION",·"MONEY",·"BOOLEAN",·"TIME",·"CHARACTER(1)"). | ||
197 | ······Any·maximal·length·can·be·specified·for·strings,·not·just·1·as·in·this | ||
198 | ······example.·The·tool·will·automatically·convert·these·to·Ada·when·generating | ||
199 | ······Ada·code.·A·special·type·("AUTOINCREMENT")·is·an·integer·that·is | ||
196 | ······âTIMESTAMPâ,·âDATEâ,·âDOUBLE·PRECISIONâ,·âMONEYâ, | ||
197 | ······âBOOLEANâ,·âTIMEâ,·âCHARACTER(1)â).·Any·maximal·length·can·be | ||
198 | ······specified·for·strings,·not·just·1·as·in·this·example.·The·tool·will | ||
199 | ······automatically·convert·these·to·Ada·when·generating·Ada·code.·A·special | ||
200 | ······type·(âAUTOINCREMENTâ)·is·an·integer·that·is·automatically | ||
201 | ······incremented·according·to·available·ids·in·the·table.·Th | 200 | ······automatically·incremented·according·to·available·ids·in·the·table.·The |
202 | ······will·depend·on·the·specific·DBMS. | 201 | ······exact·type·used·will·depend·on·the·specific·DBMS. |
203 | ······The·property· | 202 | ······The·property·'NOCASE'·indicates·that·comparison·should·be·case |
204 | ······insensitive·for·this·field. | 203 | ······insensitive·for·this·field. |
205 | ······If·the·field·is·a·foreign·key·(that·is·a·value·that·must·correspond·to·a | 204 | ······If·the·field·is·a·foreign·key·(that·is·a·value·that·must·correspond·to·a |
206 | ······row·in·another·table),·you·can·use·the·special·syntax·for·its·type: | 205 | ······row·in·another·table),·you·can·use·the·special·syntax·for·its·type: |
207 | ······fk_type·::=·'FK'·<table_name>·[·'('·<reverse_name>·')'·] | 206 | ······fk_type·::=·'FK'·<table_name>·[·'('·<reverse_name>·')'·] |
208 | ······As·you·can·see,·the·type·of·the·field·is·not·specified·explicitly,·but | 207 | ······As·you·can·see,·the·type·of·the·field·is·not·specified·explicitly,·but |
209 | ······will·always·be·that·of·the·foreign·table | 208 | ······will·always·be·that·of·the·foreign·table's·primary·key.·With·this·syntax, |
210 | ······ | 209 | ······the·foreign·table·must·have·a·single·field·for·its·primary·key.·GNATColl |
211 | ······ | 210 | ······does·not·force·a·specific·order·for·the·declaration·of·tables:·if·is |
212 | ······ | 211 | ······valid·to·have·a·foreign·key·to·a·table·that·hasn't·been·declared·yet. |
213 | ······ | 212 | ······There·is·however·a·restriction·if·you·use·the·model·to·create·a·sqlite |
214 | ······ | 213 | ······database·(through·the-createdbswitch·ofgnatcoll_db2ada):·in·this·case,·a |
215 | ······ | 214 | ······reference·to·a·table·that·hasn't·been·defined·yet·may·not·be·not·through |
216 | ······ | 215 | ······a·field·marked·as·NOT·NULL.·This·is·a·limitation·of·the·sqlite·backend |
217 | ······ | 216 | ······itself.·The·solution·in·this·case·is·to·reorder·the·declaration·of |
218 | ······ | 217 | ······tables,·or·drop·the·NOT·NULL·constraint. |
219 | ······Another·restriction·is·that·a·foreign·key·that·is·also·a·primary·key·must | 218 | ······Another·restriction·is·that·a·foreign·key·that·is·also·a·primary·key·must |
220 | ······reference·a·table·that·has·already·been·defined.·You·need·to·reorder·the | 219 | ······reference·a·table·that·has·already·been·defined.·You·need·to·reorder·the |
221 | ······declaration·of·your·tables·to·ensure·this·is·the·case. | 220 | ······declaration·of·your·tables·to·ensure·this·is·the·case. |
222 | ······ | 221 | ······"reverse_name"·is·the·optional·name·that·will·be·generated·in·the·Ada |
223 | ······code·for·the·reverse·relationship,·in·the·context·ofGNATCOLL.SQL.ORM.·If | 222 | ······code·for·the·reverse·relationship,·in·the·context·ofGNATCOLL.SQL.ORM.·If |
224 | ······the· | 223 | ······the·"reverse_name"·is·empty·(the·parenthesis·are·shown),·no·reverse |
Max diff block lines reached; 53064/63894 bytes (83.05%) of diff not shown. |
Offset 1, 3 lines modified | Offset 1, 3 lines modified | ||
1 | -rw-r--r--···0········0········0········4·2020-12-29·17:08:02.000000·debian-binary | 1 | -rw-r--r--···0········0········0········4·2020-12-29·17:08:02.000000·debian-binary |
2 | -rw-r--r--···0········0········0······864·2020-12-29·17:08:02.000000·control.tar.xz | 2 | -rw-r--r--···0········0········0······864·2020-12-29·17:08:02.000000·control.tar.xz |
3 | -rw-r--r--···0········0········0··103 | 3 | -rw-r--r--···0········0········0··1032068·2020-12-29·17:08:02.000000·data.tar.xz |
Offset 1, 4 lines modified | Offset 1, 4 lines modified | ||
1 | Displaying·notes·found·in:·.note.gnu.build-id | 1 | Displaying·notes·found·in:·.note.gnu.build-id |
2 | ··Owner················Data·size·» Description | 2 | ··Owner················Data·size·» Description |
3 | ··GNU··················0x00000014» NT_GNU_BUILD_ID·(unique·build·ID·bitstring)» ····Build·ID:· | 3 | ··GNU··················0x00000014» NT_GNU_BUILD_ID·(unique·build·ID·bitstring)» ····Build·ID:·25dc1c2a0c2b8c643e16d21f1507f229fb693cd2 |
Offset 1, 7 lines modified | Offset 1, 7 lines modified | ||
1 | Hex·dump·of·section·'.gnu_debuglink': | 1 | Hex·dump·of·section·'.gnu_debuglink': |
2 | ··0x00000000·35396634·34663130·30396239·33636462·59f44f1009b93cdb | ||
3 | ··0x000000 | 2 | ··0x00000000·64633163·32613063·32623863·36343365·dc1c2a0c2b8c643e |
3 | ··0x00000010·31366432·31663135·30376632·32396662·16d21f1507f229fb | ||
4 | ··0x00000020·3 | 4 | ··0x00000020·36393363·64322e64·65627567·00000000·693cd2.debug.... |
5 | ··0x00000030· | 5 | ··0x00000030·82d7f035····························...5 |
Offset 1, 3 lines modified | Offset 1, 3 lines modified | ||
1 | -rw-r--r--···0········0········0········4·2020-12-29·17:08:02.000000·debian-binary | 1 | -rw-r--r--···0········0········0········4·2020-12-29·17:08:02.000000·debian-binary |
2 | -rw-r--r--···0········0········0······6 | 2 | -rw-r--r--···0········0········0······636·2020-12-29·17:08:02.000000·control.tar.xz |
3 | -rw-r--r--···0········0········0···39 | 3 | -rw-r--r--···0········0········0···395924·2020-12-29·17:08:02.000000·data.tar.xz |
Offset 5, 8 lines modified | Offset 5, 8 lines modified | ||
5 | Architecture:·amd64 | 5 | Architecture:·amd64 |
6 | Maintainer:·Nicolas·Boulenguez·<nicolas@debian.org> | 6 | Maintainer:·Nicolas·Boulenguez·<nicolas@debian.org> |
7 | Installed-Size:·556 | 7 | Installed-Size:·556 |
8 | Depends:·libgnatcoll-db-bin·(=·21.0.0-6) | 8 | Depends:·libgnatcoll-db-bin·(=·21.0.0-6) |
9 | Section:·debug | 9 | Section:·debug |
10 | Priority:·optional | 10 | Priority:·optional |
11 | Description:·debug·symbols·for·libgnatcoll-db-bin | 11 | Description:·debug·symbols·for·libgnatcoll-db-bin |
12 | Build-Ids:· | 12 | Build-Ids:·13362c2f4027d9640aa539dc6d37851ef88e6b6a·f03133174cf11a10132c24cd58083e0fa9462d11 |
Offset 1, 3 lines modified | Offset 1, 3 lines modified | ||
1 | usr/lib/debug/.build-id/ | 1 | usr/lib/debug/.build-id/13/362c2f4027d9640aa539dc6d37851ef88e6b6a.debug |
2 | usr/lib/debug/.build-id/f0/3133174cf11a10132c24cd58083e0fa9462d11.debug | 2 | usr/lib/debug/.build-id/f0/3133174cf11a10132c24cd58083e0fa9462d11.debug |
3 | usr/lib/debug/.dwz/x86_64-linux-gnu/libgnatcoll-db-bin.debug | 3 | usr/lib/debug/.dwz/x86_64-linux-gnu/libgnatcoll-db-bin.debug |
Offset 1, 14 lines modified | Offset 1, 14 lines modified | ||
1 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./ | 1 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./ |
2 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/ | 2 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/ |
3 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/ | 3 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/ |
4 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/debug/ | 4 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/debug/ |
5 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/debug/.build-id/ | 5 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/debug/.build-id/ |
6 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/debug/.build-id/ | 6 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/debug/.build-id/13/ |
7 | -rw-r--r--···0·root·········(0)·root·········(0)···351944·2020-12-29·17:08:02.000000·./usr/lib/debug/.build-id/ | 7 | -rw-r--r--···0·root·········(0)·root·········(0)···351944·2020-12-29·17:08:02.000000·./usr/lib/debug/.build-id/13/362c2f4027d9640aa539dc6d37851ef88e6b6a.debug |
8 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/debug/.build-id/f0/ | 8 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/debug/.build-id/f0/ |
9 | -rw-r--r--···0·root·········(0)·root·········(0)···192232·2020-12-29·17:08:02.000000·./usr/lib/debug/.build-id/f0/3133174cf11a10132c24cd58083e0fa9462d11.debug | 9 | -rw-r--r--···0·root·········(0)·root·········(0)···192232·2020-12-29·17:08:02.000000·./usr/lib/debug/.build-id/f0/3133174cf11a10132c24cd58083e0fa9462d11.debug |
10 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/debug/.dwz/ | 10 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/debug/.dwz/ |
11 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/debug/.dwz/x86_64-linux-gnu/ | 11 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/debug/.dwz/x86_64-linux-gnu/ |
12 | -rw-r--r--···0·root·········(0)·root·········(0)····10552·2020-12-29·17:08:02.000000·./usr/lib/debug/.dwz/x86_64-linux-gnu/libgnatcoll-db-bin.debug | 12 | -rw-r--r--···0·root·········(0)·root·········(0)····10552·2020-12-29·17:08:02.000000·./usr/lib/debug/.dwz/x86_64-linux-gnu/libgnatcoll-db-bin.debug |
13 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/share/ | 13 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/share/ |
14 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/share/doc/ | 14 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/share/doc/ |
Offset 1, 8 lines modified | Offset 1, 8 lines modified | ||
1 | Displaying·notes·found·in:·.note.gnu.build-id | 1 | Displaying·notes·found·in:·.note.gnu.build-id |
2 | ··Owner················Data·size·» Description | 2 | ··Owner················Data·size·» Description |
3 | ··GNU··················0x00000014» NT_GNU_BUILD_ID·(unique·build·ID·bitstring)» ····Build·ID:· | 3 | ··GNU··················0x00000014» NT_GNU_BUILD_ID·(unique·build·ID·bitstring)» ····Build·ID:·13362c2f4027d9640aa539dc6d37851ef88e6b6a |
4 | Displaying·notes·found·in:·.note.ABI-tag | 4 | Displaying·notes·found·in:·.note.ABI-tag |
5 | ··Owner················Data·size·» Description | 5 | ··Owner················Data·size·» Description |
6 | ··GNU··················0x00000010» NT_GNU_ABI_TAG·(ABI·version·tag)» ····OS:·Linux,·ABI:·3.2.0 | 6 | ··GNU··················0x00000010» NT_GNU_ABI_TAG·(ABI·version·tag)» ····OS:·Linux,·ABI:·3.2.0 |
Offset 6901, 15 lines modified | Offset 6901, 15 lines modified | ||
6901 | ·<1><43eb>:·Abbrev·Number:·0 | 6901 | ·<1><43eb>:·Abbrev·Number:·0 |
6902 | ··Compilation·Unit·@·offset·0x43ec: | 6902 | ··Compilation·Unit·@·offset·0x43ec: |
6903 | ···Length:········0x38b71·(32-bit) | 6903 | ···Length:········0x38b71·(32-bit) |
6904 | ···Version:·······4 | 6904 | ···Version:·······4 |
6905 | ···Abbrev·Offset:·0x5b6 | 6905 | ···Abbrev·Offset:·0x5b6 |
6906 | ···Pointer·Size:··8 | 6906 | ···Pointer·Size:··8 |
6907 | ·<0><43f7>:·Abbrev·Number:·244·(DW_TAG_compile_unit) | 6907 | ·<0><43f7>:·Abbrev·Number:·244·(DW_TAG_compile_unit) |
6908 | ····<43f9>···DW_AT_producer····:·(strp)·(offset:·0x3c66):·GNU·Ada·10.2.1·20210110·-O2·-O2·-gnatA·-gnatn·-gnatwaCJ·-g·-fstack-protector-strong·-gnatec=/tmp/GNAT-TEMP-000003.TMP·-gnatem=/tmp/GNAT-TEMP-00002 | 6908 | ····<43f9>···DW_AT_producer····:·(strp)·(offset:·0x3c66):·GNU·Ada·10.2.1·20210110·-O2·-O2·-gnatA·-gnatn·-gnatwaCJ·-g·-fstack-protector-strong·-gnatec=/tmp/GNAT-TEMP-000003.TMP·-gnatem=/tmp/GNAT-TEMP-000024.TMP·-mtune=generic·-march=x86-64 |
6909 | ····<43fd>···DW_AT_language····:·(data1)·13» (ADA·95) | 6909 | ····<43fd>···DW_AT_language····:·(data1)·13» (ADA·95) |
6910 | ····<43fe>···DW_AT_name········:·(strp)·(offset:·0x15f0a):·./gnatcoll_db2ada/gnatcoll-db2ada-main.adb | 6910 | ····<43fe>···DW_AT_name········:·(strp)·(offset:·0x15f0a):·./gnatcoll_db2ada/gnatcoll-db2ada-main.adb |
6911 | ····<4402>···DW_AT_comp_dir····:·(GNU_strp_alt)·(offset:·0x6a28)· | 6911 | ····<4402>···DW_AT_comp_dir····:·(GNU_strp_alt)·(offset:·0x6a28)· |
6912 | ····<4406>···DW_AT_ranges······:·(sec_offset)·0xeea0 | 6912 | ····<4406>···DW_AT_ranges······:·(sec_offset)·0xeea0 |
6913 | ····<440a>···DW_AT_low_pc······:·(addr)·0 | 6913 | ····<440a>···DW_AT_low_pc······:·(addr)·0 |
6914 | ····<4412>···DW_AT_stmt_list···:·(sec_offset)·0xc4a | 6914 | ····<4412>···DW_AT_stmt_list···:·(sec_offset)·0xc4a |
6915 | ·<1><4416>:·Abbrev·Number:·232·(DW_TAG_imported_unit) | 6915 | ·<1><4416>:·Abbrev·Number:·232·(DW_TAG_imported_unit) |
Offset 258, 15 lines modified | Offset 258, 15 lines modified | ||
258 | ··[··3b87]··gnatcoll__db2ada__main__string_lists__first__3 | 258 | ··[··3b87]··gnatcoll__db2ada__main__string_lists__first__3 |
259 | ··[··3bb6]··gnatcoll__db2ada__main__enumeration_lists__first__3 | 259 | ··[··3bb6]··gnatcoll__db2ada__main__enumeration_lists__first__3 |
260 | ··[··3bea]··gnatcoll__db2ada__main__variables_list__first__3 | 260 | ··[··3bea]··gnatcoll__db2ada__main__variables_list__first__3 |
261 | ··[··3c1b]··ada__text_io__put__3 | 261 | ··[··3c1b]··ada__text_io__put__3 |
262 | ··[··3c30]··comma3 | 262 | ··[··3c30]··comma3 |
263 | ··[··3c37]··ada_main__e304 | 263 | ··[··3c37]··ada_main__e304 |
264 | ··[··3c46]··gnatcoll__sql__inspect__Oeq__14 | 264 | ··[··3c46]··gnatcoll__sql__inspect__Oeq__14 |
265 | ··[··3c66]··GNU·Ada·10.2.1·20210110·-O2·-O2·-gnatA·-gnatn·-gnatwaCJ·-g·-fstack-protector-strong·-gnatec=/tmp/GNAT-TEMP-000003.TMP·-gnatem=/tmp/GNAT-TEMP-00002 | 265 | ··[··3c66]··GNU·Ada·10.2.1·20210110·-O2·-O2·-gnatA·-gnatn·-gnatwaCJ·-g·-fstack-protector-strong·-gnatec=/tmp/GNAT-TEMP-000003.TMP·-gnatem=/tmp/GNAT-TEMP-000024.TMP·-mtune=generic·-march=x86-64 |
266 | ··[··3d1b]··gnatcoll__sql__inspect__write_schema__4 | 266 | ··[··3d1b]··gnatcoll__sql__inspect__write_schema__4 |
267 | ··[··3d43]··gnatcoll__db2ada__main__string_lists__read__4 | 267 | ··[··3d43]··gnatcoll__db2ada__main__string_lists__read__4 |
268 | ··[··3d71]··gnatcoll__db2ada__main__enumeration_lists__read__4 | 268 | ··[··3d71]··gnatcoll__db2ada__main__enumeration_lists__read__4 |
269 | ··[··3da4]··gnatcoll__db2ada__main__variables_list__read__4 | 269 | ··[··3da4]··gnatcoll__db2ada__main__variables_list__read__4 |
270 | ··[··3dd4]··gnatcoll__db2ada__main__string_lists__write__4 | 270 | ··[··3dd4]··gnatcoll__db2ada__main__string_lists__write__4 |
271 | ··[··3e03]··gnatcoll__db2ada__main__enumeration_lists__write__4 | 271 | ··[··3e03]··gnatcoll__db2ada__main__enumeration_lists__write__4 |
272 | ··[··3e37]··gnatcoll__db2ada__main__variables_list__write__4 | 272 | ··[··3e37]··gnatcoll__db2ada__main__variables_list__write__4 |
Offset 1, 3 lines modified | Offset 1, 3 lines modified | ||
1 | -rw-r--r--···0········0········0········4·2020-12-29·17:08:02.000000·debian-binary | 1 | -rw-r--r--···0········0········0········4·2020-12-29·17:08:02.000000·debian-binary |
2 | -rw-r--r--···0········0········0······54 | 2 | -rw-r--r--···0········0········0······544·2020-12-29·17:08:02.000000·control.tar.xz |
3 | -rw-r--r--···0········0········0··2104 | 3 | -rw-r--r--···0········0········0··2104316·2020-12-29·17:08:02.000000·data.tar.xz |
Offset 6, 8 lines modified | Offset 6, 8 lines modified | ||
6 | Maintainer:·Nicolas·Boulenguez·<nicolas@debian.org> | 6 | Maintainer:·Nicolas·Boulenguez·<nicolas@debian.org> |
7 | Installed-Size:·3111 | 7 | Installed-Size:·3111 |
8 | Depends:·libgnatcoll-sql3·(=·21.0.0-6) | 8 | Depends:·libgnatcoll-sql3·(=·21.0.0-6) |
9 | Section:·debug | 9 | Section:·debug |
10 | Priority:·optional | 10 | Priority:·optional |
11 | Multi-Arch:·same | 11 | Multi-Arch:·same |
12 | Description:·debug·symbols·for·libgnatcoll-sql3 | 12 | Description:·debug·symbols·for·libgnatcoll-sql3 |
13 | Build-Ids:· | 13 | Build-Ids:·25dc1c2a0c2b8c643e16d21f1507f229fb693cd2 |
Offset 1, 10 lines modified | Offset 1, 10 lines modified | ||
1 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./ | 1 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./ |
2 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/ | 2 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/ |
3 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/ | 3 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/ |
4 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/debug/ | 4 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/debug/ |
5 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/debug/.build-id/ | 5 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/debug/.build-id/ |
6 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/debug/.build-id/ | 6 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/lib/debug/.build-id/25/ |
7 | -rw-r--r--···0·root·········(0)·root·········(0)··3174 | 7 | -rw-r--r--···0·root·········(0)·root·········(0)··3174544·2020-12-29·17:08:02.000000·./usr/lib/debug/.build-id/25/dc1c2a0c2b8c643e16d21f1507f229fb693cd2.debug |
8 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/share/ | 8 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/share/ |
9 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/share/doc/ | 9 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/share/doc/ |
10 | lrwxrwxrwx···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-sql3-dbgsym·->·libgnatcoll-sql3 | 10 | lrwxrwxrwx···0·root·········(0)·root·········(0)········0·2020-12-29·17:08:02.000000·./usr/share/doc/libgnatcoll-sql3-dbgsym·->·libgnatcoll-sql3 |
Offset 6, 15 lines modified | Offset 6, 15 lines modified | ||
6 | ··OS/ABI:····························UNIX·-·System·V | 6 | ··OS/ABI:····························UNIX·-·System·V |
7 | ··ABI·Version:·······················0 | 7 | ··ABI·Version:·······················0 |
8 | ··Type:······························DYN·(Shared·object·file) | 8 | ··Type:······························DYN·(Shared·object·file) |
9 | ··Machine:···························Advanced·Micro·Devices·X86-64 | 9 | ··Machine:···························Advanced·Micro·Devices·X86-64 |
10 | ··Version:···························0x1 | 10 | ··Version:···························0x1 |
11 | ··Entry·point·address:···············0x16b0e0 | 11 | ··Entry·point·address:···············0x16b0e0 |
12 | ··Start·of·program·headers:··········64·(bytes·into·file) | 12 | ··Start·of·program·headers:··········64·(bytes·into·file) |
13 | ··Start·of·section·headers:··········3172 | 13 | ··Start·of·section·headers:··········3172240·(bytes·into·file) |
14 | ··Flags:·····························0x0 | 14 | ··Flags:·····························0x0 |
15 | ··Size·of·this·header:···············64·(bytes) | 15 | ··Size·of·this·header:···············64·(bytes) |
16 | ··Size·of·program·headers:···········56·(bytes) | 16 | ··Size·of·program·headers:···········56·(bytes) |
17 | ··Number·of·program·headers:·········9 | 17 | ··Number·of·program·headers:·········9 |
18 | ··Size·of·section·headers:···········64·(bytes) | 18 | ··Size·of·section·headers:···········64·(bytes) |
19 | ··Number·of·section·headers:·········36 | 19 | ··Number·of·section·headers:·········36 |
20 | ··Section·header·string·table·index:·35 | 20 | ··Section·header·string·table·index:·35 |
Offset 1, 8 lines modified | Offset 1, 8 lines modified | ||
1 | There·are·36·section·headers,·starting·at·offset·0x306 | 1 | There·are·36·section·headers,·starting·at·offset·0x306790: |
2 | Section·Headers: | 2 | Section·Headers: |
3 | ··[Nr]·Name··············Type············Address··········Off····Size···ES·Flg·Lk·Inf·Al | 3 | ··[Nr]·Name··············Type············Address··········Off····Size···ES·Flg·Lk·Inf·Al |
4 | ··[·0]···················NULL············0000000000000000·000000·000000·00······0···0··0 | 4 | ··[·0]···················NULL············0000000000000000·000000·000000·00······0···0··0 |
5 | ··[·1]·.note.gnu.build-id·NOTE············0000000000000238·000238·000024·00···A··0···0··4 | 5 | ··[·1]·.note.gnu.build-id·NOTE············0000000000000238·000238·000024·00···A··0···0··4 |
6 | ··[·2]·.gnu.hash·········NOBITS··········0000000000000260·00025c·0180f8·00···A··3···0··8 | 6 | ··[·2]·.gnu.hash·········NOBITS··········0000000000000260·00025c·0180f8·00···A··3···0··8 |
7 | ··[·3]·.dynsym···········NOBITS··········0000000000018358·00025c·049bc0·18···A··4···1··8 | 7 | ··[·3]·.dynsym···········NOBITS··········0000000000018358·00025c·049bc0·18···A··4···1··8 |
Offset 25, 21 lines modified | Offset 25, 21 lines modified | ||
25 | ··[20]·.data.rel.ro······NOBITS··········0000000000444040·001030·01db28·00··WA··0···0·32 | 25 | ··[20]·.data.rel.ro······NOBITS··········0000000000444040·001030·01db28·00··WA··0···0·32 |
26 | ··[21]·.dynamic··········NOBITS··········0000000000461b68·001030·000250·10··WA··4···0··8 | 26 | ··[21]·.dynamic··········NOBITS··········0000000000461b68·001030·000250·10··WA··4···0··8 |
27 | ··[22]·.got··············NOBITS··········0000000000461db8·001030·009238·08··WA··0···0··8 | 27 | ··[22]·.got··············NOBITS··········0000000000461db8·001030·009238·08··WA··0···0··8 |
28 | ··[23]·.data·············NOBITS··········000000000046b000·001030·001b90·00··WA··0···0·32 | 28 | ··[23]·.data·············NOBITS··········000000000046b000·001030·001b90·00··WA··0···0·32 |
29 | ··[24]·.bss··············NOBITS··········000000000046cba0·001030·002180·00··WA··0···0·32 | 29 | ··[24]·.bss··············NOBITS··········000000000046cba0·001030·002180·00··WA··0···0·32 |
30 | ··[25]·.comment··········PROGBITS········0000000000000000·00025c·000027·01··MS··0···0··1 | 30 | ··[25]·.comment··········PROGBITS········0000000000000000·00025c·000027·01··MS··0···0··1 |
31 | ··[26]·.debug_aranges····PROGBITS········0000000000000000·000288·000109·00···C··0···0··8 | 31 | ··[26]·.debug_aranges····PROGBITS········0000000000000000·000288·000109·00···C··0···0··8 |
32 | ··[27]·.debug_info·······PROGBITS········0000000000000000·000398·0e781 | 32 | ··[27]·.debug_info·······PROGBITS········0000000000000000·000398·0e781d·00···C··0···0··8 |
33 | ··[28]·.debug_abbrev·····PROGBITS········0000000000000000·0e7bb8·002099·00···C··0···0··8 | 33 | ··[28]·.debug_abbrev·····PROGBITS········0000000000000000·0e7bb8·002099·00···C··0···0··8 |
34 | ··[29]·.debug_line·······PROGBITS········0000000000000000·0e9c58·0454e1·00···C··0···0··8 | 34 | ··[29]·.debug_line·······PROGBITS········0000000000000000·0e9c58·0454e1·00···C··0···0··8 |
35 | ··[30]·.debug_str········PROGBITS········0000000000000000·12f140·0170 | 35 | ··[30]·.debug_str········PROGBITS········0000000000000000·12f140·017074·01·MSC··0···0··8 |
36 | ··[31]·.debug_loc········PROGBITS········0000000000000000·146 | 36 | ··[31]·.debug_loc········PROGBITS········0000000000000000·1461b8·07e29d·00···C··0···0··8 |
37 | ··[32]·.debug_ranges·····PROGBITS········0000000000000000·1c44 | 37 | ··[32]·.debug_ranges·····PROGBITS········0000000000000000·1c4458·017c4d·00···C··0···0··8 |
38 | ··[33]·.symtab···········SYMTAB··········0000000000000000·1dc | 38 | ··[33]·.symtab···········SYMTAB··········0000000000000000·1dc0a8·05cbe0·18·····34·3245··8 |
39 | ··[34]·.strtab···········STRTAB··········0000000000000000·238 | 39 | ··[34]·.strtab···········STRTAB··········0000000000000000·238c88·0cd9a4·00······0···0··1 |
40 | ··[35]·.shstrtab·········STRTAB··········0000000000000000·3066 | 40 | ··[35]·.shstrtab·········STRTAB··········0000000000000000·30662c·000160·00······0···0··1 |
41 | Key·to·Flags: | 41 | Key·to·Flags: |
42 | ··W·(write),·A·(alloc),·X·(execute),·M·(merge),·S·(strings),·I·(info), | 42 | ··W·(write),·A·(alloc),·X·(execute),·M·(merge),·S·(strings),·I·(info), |
43 | ··L·(link·order),·O·(extra·OS·processing·required),·G·(group),·T·(TLS), | 43 | ··L·(link·order),·O·(extra·OS·processing·required),·G·(group),·T·(TLS), |
44 | ··C·(compressed),·x·(unknown),·o·(OS·specific),·E·(exclude), | 44 | ··C·(compressed),·x·(unknown),·o·(OS·specific),·E·(exclude), |
45 | ··D·(mbind),·l·(large),·p·(processor·specific) | 45 | ··D·(mbind),·l·(large),·p·(processor·specific) |
Offset 1, 4 lines modified | Offset 1, 4 lines modified | ||
1 | Displaying·notes·found·in:·.note.gnu.build-id | 1 | Displaying·notes·found·in:·.note.gnu.build-id |
2 | ··Owner················Data·size·» Description | 2 | ··Owner················Data·size·» Description |
3 | ··GNU··················0x00000014» NT_GNU_BUILD_ID·(unique·build·ID·bitstring)» ····Build·ID:· | 3 | ··GNU··················0x00000014» NT_GNU_BUILD_ID·(unique·build·ID·bitstring)» ····Build·ID:·25dc1c2a0c2b8c643e16d21f1507f229fb693cd2 |
Offset 75, 15 lines modified | Offset 75, 15 lines modified | ||
75 | ····<72>···DW_AT_byte_size···:·(data1)·4 | 75 | ····<72>···DW_AT_byte_size···:·(data1)·4 |
76 | ····<73>···DW_AT_encoding····:·(data1)·5» (signed) | 76 | ····<73>···DW_AT_encoding····:·(data1)·5» (signed) |
77 | ····<74>···DW_AT_name········:·(strp)·(offset:·0x716f8):·integer | 77 | ····<74>···DW_AT_name········:·(strp)·(offset:·0x716f8):·integer |
78 | ····<78>···DW_AT_artificial··:·(flag_present)·1 | 78 | ····<78>···DW_AT_artificial··:·(flag_present)·1 |
79 | ·<1><78>:·Abbrev·Number:·38·(DW_TAG_base_type) | 79 | ·<1><78>:·Abbrev·Number:·38·(DW_TAG_base_type) |
80 | ····<79>···DW_AT_byte_size···:·(data1)·8 | 80 | ····<79>···DW_AT_byte_size···:·(data1)·8 |
81 | ····<7a>···DW_AT_encoding····:·(data1)·5» (signed) | 81 | ····<7a>···DW_AT_encoding····:·(data1)·5» (signed) |
82 | ····<7b>···DW_AT_name········:·(strp)·(offset:·0x95 | 82 | ····<7b>···DW_AT_name········:·(strp)·(offset:·0x95b25):·long_long_integer |
83 | ····<7f>···DW_AT_artificial··:·(flag_present)·1 | 83 | ····<7f>···DW_AT_artificial··:·(flag_present)·1 |
84 | ·<1><7f>:·Abbrev·Number:·11·(DW_TAG_subprogram) | 84 | ·<1><7f>:·Abbrev·Number:·11·(DW_TAG_subprogram) |
85 | ····<80>···DW_AT_name········:·(strp)·(offset:·0x1839):·system__storage_elements__to_integer | 85 | ····<80>···DW_AT_name········:·(strp)·(offset:·0x1839):·system__storage_elements__to_integer |
86 | ····<84>···DW_AT_decl_file···:·(data1)·14 | 86 | ····<84>···DW_AT_decl_file···:·(data1)·14 |
87 | ····<85>···DW_AT_decl_line···:·(data1)·68 | 87 | ····<85>···DW_AT_decl_line···:·(data1)·68 |
88 | ····<86>···DW_AT_decl_column·:·(data1)·4 | 88 | ····<86>···DW_AT_decl_column·:·(data1)·4 |
89 | ····<87>···DW_AT_type········:·(ref1)·<0x6a>,·system__storage_elements__integer_address | 89 | ····<87>···DW_AT_type········:·(ref1)·<0x6a>,·system__storage_elements__integer_address |
Offset 6439, 15 lines modified | Offset 6439, 15 lines modified | ||
6439 | ····<2d9e>···DW_AT_name········:·(strp)·(offset:·0x1862):·buckets | 6439 | ····<2d9e>···DW_AT_name········:·(strp)·(offset:·0x1862):·buckets |
6440 | ····<2da2>···DW_AT_decl_file···:·(data1)·29 | 6440 | ····<2da2>···DW_AT_decl_file···:·(data1)·29 |
6441 | ····<2da3>···DW_AT_decl_line···:·(data1)·53 | 6441 | ····<2da3>···DW_AT_decl_line···:·(data1)·53 |
6442 | ····<2da4>···DW_AT_decl_column·:·(data1)·10 | 6442 | ····<2da4>···DW_AT_decl_column·:·(data1)·10 |
6443 | ····<2da5>···DW_AT_type········:·(ref_udata)·<0x2ca5>,·gnatcoll__sql_impl__table_sets__ht_types__buckets_access,·gnatcoll__sql_impl__table_sets__ht_types__buckets_type___XUP | 6443 | ····<2da5>···DW_AT_type········:·(ref_udata)·<0x2ca5>,·gnatcoll__sql_impl__table_sets__ht_types__buckets_access,·gnatcoll__sql_impl__table_sets__ht_types__buckets_type___XUP |
6444 | ····<2da7>···DW_AT_data_member_location:·(data1)·8 | 6444 | ····<2da7>···DW_AT_data_member_location:·(data1)·8 |
6445 | ·<2><2da8>:·Abbrev·Number:·61·(DW_TAG_member) | 6445 | ·<2><2da8>:·Abbrev·Number:·61·(DW_TAG_member) |
6446 | ····<2da9>···DW_AT_name········:·(strp)·(offset:·0xa0f | 6446 | ····<2da9>···DW_AT_name········:·(strp)·(offset:·0xa0fbd):·length |
6447 | ····<2dad>···DW_AT_decl_file···:·(data1)·29 | 6447 | ····<2dad>···DW_AT_decl_file···:·(data1)·29 |
6448 | ····<2dae>···DW_AT_decl_line···:·(data1)·54 | 6448 | ····<2dae>···DW_AT_decl_line···:·(data1)·54 |
6449 | ····<2daf>···DW_AT_decl_column·:·(data1)·10 | 6449 | ····<2daf>···DW_AT_decl_column·:·(data1)·10 |
6450 | ····<2db0>···DW_AT_type········:·(ref_addr)·<0x646>,·ada__containers__count_type___XDLU_0__2147483647,·ada__containers__Tcount_typeB | 6450 | ····<2db0>···DW_AT_type········:·(ref_addr)·<0x646>,·ada__containers__count_type___XDLU_0__2147483647,·ada__containers__Tcount_typeB |
6451 | ····<2db4>···DW_AT_data_member_location:·(data1)·24 | 6451 | ····<2db4>···DW_AT_data_member_location:·(data1)·24 |
6452 | ·<2><2db5>:·Abbrev·Number:·97·(DW_TAG_member) | 6452 | ·<2><2db5>:·Abbrev·Number:·97·(DW_TAG_member) |
6453 | ····<2db6>···DW_AT_name········:·(string)·tc | 6453 | ····<2db6>···DW_AT_name········:·(string)·tc |
Offset 6954, 15 lines modified | Offset 6954, 15 lines modified | ||
6954 | ····<315a>···DW_AT_name········:·(strp)·(offset:·0x4ad3e):·_parent | 6954 | ····<315a>···DW_AT_name········:·(strp)·(offset:·0x4ad3e):·_parent |
6955 | ····<315e>···DW_AT_decl_file···:·(data1)·25 | 6955 | ····<315e>···DW_AT_decl_file···:·(data1)·25 |
6956 | ····<315f>···DW_AT_decl_line···:·(data2)·268 | 6956 | ····<315f>···DW_AT_decl_line···:·(data2)·268 |
6957 | ····<3161>···DW_AT_decl_column·:·(data1)·9 | 6957 | ····<3161>···DW_AT_decl_column·:·(data1)·9 |
6958 | ····<3162>···DW_AT_type········:·(ref_addr)·<0x403>,·gnatcoll__sql_impl__formatter | 6958 | ····<3162>···DW_AT_type········:·(ref_addr)·<0x403>,·gnatcoll__sql_impl__formatter |
6959 | ····<3166>···DW_AT_data_member_location:·(data1)·0 | 6959 | ····<3166>···DW_AT_data_member_location:·(data1)·0 |
6960 | ·<2><3167>:·Abbrev·Number:·34·(DW_TAG_member) | 6960 | ·<2><3167>:·Abbrev·Number:·34·(DW_TAG_member) |
6961 | ····<3168>···DW_AT_name········:·(strp)·(offset:·0x99 | 6961 | ····<3168>···DW_AT_name········:·(strp)·(offset:·0x9922a):·descr |
6962 | ····<316c>···DW_AT_decl_file···:·(data1)·26 | 6962 | ····<316c>···DW_AT_decl_file···:·(data1)·26 |
6963 | ····<316d>···DW_AT_decl_line···:·(data1)·229 | 6963 | ····<316d>···DW_AT_decl_line···:·(data1)·229 |
6964 | ····<316e>···DW_AT_decl_column·:·(data1)·7 | 6964 | ····<316e>···DW_AT_decl_column·:·(data1)·7 |
6965 | ····<316f>···DW_AT_type········:·(ref_addr)·<0x1599>,·gnatcoll__sql__exec__T713s,·gnatcoll__sql__exec__database_description_record | 6965 | ····<316f>···DW_AT_type········:·(ref_addr)·<0x1599>,·gnatcoll__sql__exec__T713s,·gnatcoll__sql__exec__database_description_record |
6966 | ····<3173>···DW_AT_data_member_location:·(data1)·8 | 6966 | ····<3173>···DW_AT_data_member_location:·(data1)·8 |
6967 | ·<2><3174>:·Abbrev·Number:·34·(DW_TAG_member) | 6967 | ·<2><3174>:·Abbrev·Number:·34·(DW_TAG_member) |
6968 | ····<3175>···DW_AT_name········:·(strp)·(offset:·0x6860):·always_use_transactions | 6968 | ····<3175>···DW_AT_name········:·(strp)·(offset:·0x6860):·always_use_transactions |
Offset 8532, 15 lines modified | Offset 8532, 15 lines modified | ||
8532 | ····<3d0c>···DW_AT_type········:·(ref_udata)·<0x3cd6>,·system__tasking__accept_list___XUA,·system__tasking__accept_alternative | 8532 | ····<3d0c>···DW_AT_type········:·(ref_udata)·<0x3cd6>,·system__tasking__accept_list___XUA,·system__tasking__accept_alternative |
8533 | ·<1><3d0e>:·Abbrev·Number:·52·(DW_TAG_pointer_type) | 8533 | ·<1><3d0e>:·Abbrev·Number:·52·(DW_TAG_pointer_type) |
8534 | ····<3d0f>···DW_AT_byte_size···:·(data1)·8 | 8534 | ····<3d0f>···DW_AT_byte_size···:·(data1)·8 |
8535 | ····<3d10>···DW_AT_type········:·(ref_udata)·<0x3c95>,·system__tasking__accept_list___XUB | 8535 | ····<3d10>···DW_AT_type········:·(ref_udata)·<0x3c95>,·system__tasking__accept_list___XUB |
8536 | ·<1><3d12>:·Abbrev·Number:·171·(DW_TAG_base_type) | 8536 | ·<1><3d12>:·Abbrev·Number:·171·(DW_TAG_base_type) |
8537 | ····<3d14>···DW_AT_byte_size···:·(data1)·8 | 8537 | ····<3d14>···DW_AT_byte_size···:·(data1)·8 |
8538 | ····<3d15>···DW_AT_encoding····:·(data1)·5» (signed) | 8538 | ····<3d15>···DW_AT_encoding····:·(data1)·5» (signed) |
8539 | ····<3d16>···DW_AT_name········:·(strp)·(offset:·0x95 | 8539 | ····<3d16>···DW_AT_name········:·(strp)·(offset:·0x95b2a):·long_integer |
8540 | ····<3d1a>···DW_AT_artificial··:·(flag_present)·1 | 8540 | ····<3d1a>···DW_AT_artificial··:·(flag_present)·1 |
8541 | ·<1><3d1a>:·Abbrev·Number:·172·(DW_TAG_const_type) | 8541 | ·<1><3d1a>:·Abbrev·Number:·172·(DW_TAG_const_type) |
8542 | ····<3d1c>···DW_AT_type········:·(ref_addr)·<0xdf8>,·system__tasking__atomic_address | 8542 | ····<3d1c>···DW_AT_type········:·(ref_addr)·<0xdf8>,·system__tasking__atomic_address |
8543 | ·<1><3d20>:·Abbrev·Number:·185·(DW_TAG_volatile_type) | 8543 | ·<1><3d20>:·Abbrev·Number:·185·(DW_TAG_volatile_type) |
8544 | ····<3d22>···DW_AT_type········:·(ref_udata)·<0x3d1a>,·system__tasking__atomic_address | 8544 | ····<3d22>···DW_AT_type········:·(ref_udata)·<0x3d1a>,·system__tasking__atomic_address |
8545 | ·<1><3d24>:·Abbrev·Number:·48·(DW_TAG_structure_type) | 8545 | ·<1><3d24>:·Abbrev·Number:·48·(DW_TAG_structure_type) |
8546 | ····<3d25>···DW_AT_name········:·(strp)·(offset:·0x620a):·system__tasking__task_entry_queue_array___XUP | 8546 | ····<3d25>···DW_AT_name········:·(strp)·(offset:·0x620a):·system__tasking__task_entry_queue_array___XUP |
Offset 8918, 15 lines modified | Offset 8918, 15 lines modified | ||
8918 | ····<3fa5>···DW_AT_name········:·(strp)·(offset:·0x645af):·element | 8918 | ····<3fa5>···DW_AT_name········:·(strp)·(offset:·0x645af):·element |
8919 | ····<3fa9>···DW_AT_decl_file···:·(data1)·4 | 8919 | ····<3fa9>···DW_AT_decl_file···:·(data1)·4 |
8920 | ····<3faa>···DW_AT_decl_line···:·(data1)·79 | 8920 | ····<3faa>···DW_AT_decl_line···:·(data1)·79 |
8921 | ····<3fab>···DW_AT_decl_column·:·(data1)·7 | 8921 | ····<3fab>···DW_AT_decl_column·:·(data1)·7 |
8922 | ····<3fac>···DW_AT_type········:·(ref_udata)·<0x31ca>,·gnatcoll__strings__xstring | 8922 | ····<3fac>···DW_AT_type········:·(ref_udata)·<0x31ca>,·gnatcoll__strings__xstring |
8923 | ····<3fae>···DW_AT_data_member_location:·(data1)·0 | 8923 | ····<3fae>···DW_AT_data_member_location:·(data1)·0 |
8924 | ·<2><3faf>:·Abbrev·Number:·34·(DW_TAG_member) | 8924 | ·<2><3faf>:·Abbrev·Number:·34·(DW_TAG_member) |
8925 | ····<3fb0>···DW_AT_name········:·(strp)·(offset:·0x98 | 8925 | ····<3fb0>···DW_AT_name········:·(strp)·(offset:·0x9841f):·empty |
8926 | ····<3fb4>···DW_AT_decl_file···:·(data1)·4 | 8926 | ····<3fb4>···DW_AT_decl_file···:·(data1)·4 |
8927 | ····<3fb5>···DW_AT_decl_line···:·(data1)·80 | 8927 | ····<3fb5>···DW_AT_decl_line···:·(data1)·80 |
8928 | ····<3fb6>···DW_AT_decl_column·:·(data1)·7 | 8928 | ····<3fb6>···DW_AT_decl_column·:·(data1)·7 |
8929 | ····<3fb7>···DW_AT_type········:·(ref_addr)·<0x36>,·boolean | 8929 | ····<3fb7>···DW_AT_type········:·(ref_addr)·<0x36>,·boolean |
8930 | ····<3fbb>···DW_AT_data_member_location:·(data1)·32 | 8930 | ····<3fbb>···DW_AT_data_member_location:·(data1)·32 |
8931 | ·<2><3fbc>:·Abbrev·Number:·0 | 8931 | ·<2><3fbc>:·Abbrev·Number:·0 |
8932 | ·<1><3fbd>:·Abbrev·Number:·112·(DW_TAG_array_type) | 8932 | ·<1><3fbd>:·Abbrev·Number:·112·(DW_TAG_array_type) |
Offset 9752, 15 lines modified | Offset 9752, 15 lines modified | ||
9752 | ····<452e>···DW_AT_name········:·(strp)·(offset:·0x1862):·buckets | 9752 | ····<452e>···DW_AT_name········:·(strp)·(offset:·0x1862):·buckets |
9753 | ····<4532>···DW_AT_decl_file···:·(data1)·23 | 9753 | ····<4532>···DW_AT_decl_file···:·(data1)·23 |
9754 | ····<4533>···DW_AT_decl_line···:·(data1)·53 | 9754 | ····<4533>···DW_AT_decl_line···:·(data1)·53 |
9755 | ····<4534>···DW_AT_decl_column·:·(data1)·10 | 9755 | ····<4534>···DW_AT_decl_column·:·(data1)·10 |
9756 | ····<4535>···DW_AT_type········:·(ref_udata)·<0x4508>,·gnatcoll__sql__exec__tasking__string_indexes__ht_types__buckets_access,·gnatcoll__sql__exec__tasking__string_indexes__ht_types__buckets_type___XUP | 9756 | ····<4535>···DW_AT_type········:·(ref_udata)·<0x4508>,·gnatcoll__sql__exec__tasking__string_indexes__ht_types__buckets_access,·gnatcoll__sql__exec__tasking__string_indexes__ht_types__buckets_type___XUP |
9757 | ····<4537>···DW_AT_data_member_location:·(data1)·8 | 9757 | ····<4537>···DW_AT_data_member_location:·(data1)·8 |
9758 | ·<2><4538>:·Abbrev·Number:·34·(DW_TAG_member) | 9758 | ·<2><4538>:·Abbrev·Number:·34·(DW_TAG_member) |
9759 | ····<4539>···DW_AT_name········:·(strp)·(offset:·0xa0f | 9759 | ····<4539>···DW_AT_name········:·(strp)·(offset:·0xa0fbd):·length |
9760 | ····<453d>···DW_AT_decl_file···:·(data1)·23 | 9760 | ····<453d>···DW_AT_decl_file···:·(data1)·23 |
9761 | ····<453e>···DW_AT_decl_line···:·(data1)·54 | 9761 | ····<453e>···DW_AT_decl_line···:·(data1)·54 |
9762 | ····<453f>···DW_AT_decl_column·:·(data1)·10 | 9762 | ····<453f>···DW_AT_decl_column·:·(data1)·10 |
9763 | ····<4540>···DW_AT_type········:·(ref_addr)·<0x646>,·ada__containers__count_type___XDLU_0__2147483647,·ada__containers__Tcount_typeB | 9763 | ····<4540>···DW_AT_type········:·(ref_addr)·<0x646>,·ada__containers__count_type___XDLU_0__2147483647,·ada__containers__Tcount_typeB |
9764 | ····<4544>···DW_AT_data_member_location:·(data1)·24 | 9764 | ····<4544>···DW_AT_data_member_location:·(data1)·24 |
9765 | ·<2><4545>:·Abbrev·Number:·90·(DW_TAG_member) | 9765 | ·<2><4545>:·Abbrev·Number:·90·(DW_TAG_member) |
9766 | ····<4546>···DW_AT_name········:·(string)·tc | 9766 | ····<4546>···DW_AT_name········:·(string)·tc |
Offset 25995, 15 lines modified | Offset 25995, 15 lines modified | ||
25995 | ····<e5e8>···DW_AT_decl_file···:·(data1)·16 | 25995 | ····<e5e8>···DW_AT_decl_file···:·(data1)·16 |
25996 | ····<e5e9>···DW_AT_decl_line···:·(data2)·613 | 25996 | ····<e5e9>···DW_AT_decl_line···:·(data2)·613 |
25997 | ····<e5eb>···DW_AT_decl_column·:·(data1)·4 | 25997 | ····<e5eb>···DW_AT_decl_column·:·(data1)·4 |
25998 | ····<e5ec>···DW_AT_type········:·(ref_udata)·<0x4508>,·gnatcoll__sql__exec__tasking__string_indexes__ht_types__buckets_access,·gnatcoll__sql__exec__tasking__string_indexes__ht_types__buckets_type___XUP | 25998 | ····<e5ec>···DW_AT_type········:·(ref_udata)·<0x4508>,·gnatcoll__sql__exec__tasking__string_indexes__ht_types__buckets_access,·gnatcoll__sql__exec__tasking__string_indexes__ht_types__buckets_type___XUP |
25999 | ····<e5ee>···DW_AT_inline······:·(data1)·3» (declared·as·inline·and·inlined) | 25999 | ····<e5ee>···DW_AT_inline······:·(data1)·3» (declared·as·inline·and·inlined) |
26000 | ····<e5ef>···DW_AT_sibling·····:·(ref_udata)·<0xe608> | 26000 | ····<e5ef>···DW_AT_sibling·····:·(ref_udata)·<0xe608> |
26001 | ·<2><e5f2>:·Abbrev·Number:·41·(DW_TAG_formal_parameter) | 26001 | ·<2><e5f2>:·Abbrev·Number:·41·(DW_TAG_formal_parameter) |
26002 | ····<e5f3>···DW_AT_name········:·(strp)·(offset:·0xa0f | 26002 | ····<e5f3>···DW_AT_name········:·(strp)·(offset:·0xa0fbd):·length |
26003 | ····<e5f7>···DW_AT_decl_file···:·(data1)·67 | 26003 | ····<e5f7>···DW_AT_decl_file···:·(data1)·67 |
26004 | ····<e5f8>···DW_AT_decl_line···:·(data1)·205 | 26004 | ····<e5f8>···DW_AT_decl_line···:·(data1)·205 |
26005 | ····<e5f9>···DW_AT_decl_column·:·(data1)·26 | 26005 | ····<e5f9>···DW_AT_decl_column·:·(data1)·26 |
26006 | ····<e5fa>···DW_AT_type········:·(ref_addr)·<0x973>,·ada__containers__hash_type | 26006 | ····<e5fa>···DW_AT_type········:·(ref_addr)·<0x973>,·ada__containers__hash_type |
26007 | ·<2><e5fe>:·Abbrev·Number:·67·(DW_TAG_variable) | 26007 | ·<2><e5fe>:·Abbrev·Number:·67·(DW_TAG_variable) |
26008 | ····<e5ff>···DW_AT_name········:·(strp)·(offset:·0xb484):·gnatcoll__sql__exec__tasking__string_indexes__ht_ops__new_buckets__rng___U | 26008 | ····<e5ff>···DW_AT_name········:·(strp)·(offset:·0xb484):·gnatcoll__sql__exec__tasking__string_indexes__ht_ops__new_buckets__rng___U |
26009 | ····<e603>···DW_AT_type········:·(ref_addr)·<0x973>,·ada__containers__hash_type | 26009 | ····<e603>···DW_AT_type········:·(ref_addr)·<0x973>,·ada__containers__hash_type |
Offset 28485, 15 lines modified | Offset 28485, 15 lines modified | ||
28485 | ····<fea4>···DW_AT_decl_file···:·(data1)·21 | 28485 | ····<fea4>···DW_AT_decl_file···:·(data1)·21 |
28486 | ····<fea5>···DW_AT_decl_line···:·(data1)·83 | 28486 | ····<fea5>···DW_AT_decl_line···:·(data1)·83 |
28487 | ····<fea6>···DW_AT_decl_column·:·(data1)·7 | 28487 | ····<fea6>···DW_AT_decl_column·:·(data1)·7 |
28488 | ····<fea7>···DW_AT_type········:·(ref_udata)·<0x4014>,·gnatcoll__sql__exec__tasking__record_type___XUP | 28488 | ····<fea7>···DW_AT_type········:·(ref_udata)·<0x4014>,·gnatcoll__sql__exec__tasking__record_type___XUP |
28489 | ····<fea9>···DW_AT_location····:·(sec_offset)·0xe251·(location·list) | 28489 | ····<fea9>···DW_AT_location····:·(sec_offset)·0xe251·(location·list) |
28490 | ····<fead>···DW_AT_GNU_locviews:·(sec_offset)·0xe247 | 28490 | ····<fead>···DW_AT_GNU_locviews:·(sec_offset)·0xe247 |
28491 | ·<2><feb1>:·Abbrev·Number:·58·(DW_TAG_formal_parameter) | 28491 | ·<2><feb1>:·Abbrev·Number:·58·(DW_TAG_formal_parameter) |
28492 | ····<feb2>···DW_AT_name········:·(strp)·(offset:·0xa0f | 28492 | ····<feb2>···DW_AT_name········:·(strp)·(offset:·0xa0fbd):·length |
28493 | ····<feb6>···DW_AT_decl_file···:·(data1)·21 | 28493 | ····<feb6>···DW_AT_decl_file···:·(data1)·21 |
28494 | ····<feb7>···DW_AT_decl_line···:·(data1)·84 | 28494 | ····<feb7>···DW_AT_decl_line···:·(data1)·84 |
28495 | ····<feb8>···DW_AT_decl_column·:·(data1)·7 | 28495 | ····<feb8>···DW_AT_decl_column·:·(data1)·7 |
28496 | ····<feb9>···DW_AT_type········:·(ref_addr)·<0x655>,·ada__containers__count_type___XDLU_0__2147483647,·ada__containers__Tcount_typeB | 28496 | ····<feb9>···DW_AT_type········:·(ref_addr)·<0x655>,·ada__containers__count_type___XDLU_0__2147483647,·ada__containers__Tcount_typeB |
28497 | ····<febd>···DW_AT_location····:·(sec_offset)·0xe2ed·(location·list) | 28497 | ····<febd>···DW_AT_location····:·(sec_offset)·0xe2ed·(location·list) |
28498 | ····<fec1>···DW_AT_GNU_locviews:·(sec_offset)·0xe2d9 | 28498 | ····<fec1>···DW_AT_GNU_locviews:·(sec_offset)·0xe2d9 |
28499 | ·<2><fec5>:·Abbrev·Number:·10·(DW_TAG_lexical_block) | 28499 | ·<2><fec5>:·Abbrev·Number:·10·(DW_TAG_lexical_block) |
Max diff block lines reached; 1264947/1273207 bytes (99.35%) of diff not shown. |
Offset 1, 213 lines modified | Offset 1, 226 lines modified | ||
1 | 1 | GCC:·(Debian·10.2.1-6)·10.2.1·20210110 | |
2 | vggggggggv | ||
3 | K"iuX^!»5Z | ||
4 | 4A]'h<}- | ||
5 | 'fz-u!4s | ||
6 | i>D2R{y~ | ||
7 | j'2;@L'.9 | ||
8 | >j.!.WW[| | ||
9 | $*e%Q5O: | ||
10 | ^OIs@0hM?I! | ||
11 | 8WEwU7Uj#\ | ||
12 | :qV{{+vM+h | ||
13 | \<-tT/,M | ||
14 | -sdQ%Kp$ | ||
15 | c'+}b:w"|kAZ | ||
16 | L`I&=tA& | ||
17 | bnHH{%(cS | ||
18 | Ty"tum!Sd | ||
19 | 0$W-x6/~ | ||
20 | R.uYP?]% | ||
21 | mv_k,D,BA | ||
22 | >#w*(Zeo'S | ||
23 | 1a3Tw5Z"- | ||
24 | _BOJDqND | ||
25 | .hG=\jXA | ||
26 | W=Dq36^H | ||
27 | zvd)tIK^ | ||
28 | hWW>6GOT6NR | ||
29 | J3Ny~I6u | ||
30 | %T]dvP|0: | ||
31 | x>SD6V'v | ||
32 | q·f·Nb>ik[ | ||
33 | » 2,Vy]`+ | ||
34 | +m0g_\lV | ||
35 | $-/L3NM( | ||
36 | E'*4*bL](q4 | ||
37 | nBteU()] | ||
38 | OYk<n0=7 | ||
39 | loUSDv7& | ||
40 | 4,rsWcD% | ||
41 | v]e_AeUhx | ||
42 | 2 | T=)4TPnY | |
3 | j}XSc6hk | ||
4 | gLy#SP`<y#O | ||
5 | ;C((-V'$ | ||
6 | MU"3U;:j | ||
7 | (!'i·DJ%·M | ||
8 | fe$H2R36v | ||
9 | ->Bbd`i{ | ||
10 | K;XBiNZs | ||
11 | #DF@<;P0O<% | ||
12 | x[%(Nk<T | ||
13 | Fm+|WA2"CmU(2K | ||
14 | n}[» z:<(_ | ||
15 | 6<J$pY^yG» | ||
16 | xv)^BX>s | ||
17 | b{g5» 9|A | ||
18 | @"|k.VoS | ||
19 | "]hKN@!~ | ||
20 | 95·gRZACh | ||
21 | J%V$Ob?! | ||
22 | \&,&|nC'Q | ||
23 | ZY?Ayw[z | ||
24 | %|9N`[z6 | ||
25 | UtgXgV}[JB5 | ||
26 | XJC#;WVP+ | ||
27 | )ZHY9^/k | ||
28 | WVKDoRDB | ||
29 | ·_}Ap1,/_@ | ||
30 | jth<<Kq- | ||
31 | Puj%hrSLT]T | ||
32 | (<U@#Ar? | ||
33 | NmQ$3@iK | ||
34 | ,aJReabbD | ||
35 | "m[Jv+Ub | ||
36 | dSG)!VSG)% | ||
37 | `>j37r0_3 | ||
38 | Rk{<(%AYhR | ||
39 | 1e7/Q2P= | ||
40 | /7I\FWtw | ||
41 | M[m==PA{ | ||
42 | 80lN@[nQ7 | ||
43 | D8299N71 | ||
44 | aQ_67o"( | ||
45 | 0#<ic`F0 | ||
46 | N'`FiAdJ | ||
47 | /2fv)W{I | ||
48 | <a2m^mL& | ||
49 | ]{~iag4Lz | ||
50 | ui#h2!X; | ||
51 | C%u!8:vR* | ||
52 | r(L&o[ag | ||
43 | 3.Ih0=KOX | 53 | 3.Ih0=KOX |
44 | E_GkT]En@ | 54 | E_GkT]En@ |
45 | 90_m0NP[ | 55 | 90_m0NP[ |
46 | YDOrqcpK= | ||
47 | 56 | /u&k-Kkd | |
57 | &pC7Ygj{ | ||
48 | MZ,{"783ODpI> | 58 | MZ,{"783ODpI> |
49 | o27:jAp$g2 | 59 | o27:jAp$g2 |
50 | M+.DU4|) | 60 | M+.DU4|) |
51 | ?HE-!i/sr~ | 61 | ?HE-!i/sr~ |
52 | ^cS,\c!4 | ||
53 | Vwnma9\- | 62 | Vwnma9\- |
54 | 8 | 63 | 8K)\jDA/# |
55 | #OltF{A'ns | ||
56 | 0B^e» *Z/ | ||
57 | G5p» 1UbY | ||
58 | UNzK;7Ty | ||
59 | :rz1?lZX | ||
60 | jGWGCnIC | ||
61 | *Gx:<{ZPV | ||
62 | P.9@2~.· | ||
63 | IariigVe5.- | ||
64 | {]S%;@80_ | ||
65 | 0u)g`D>o | ||
66 | bc\k:zN;Yzl | ||
67 | 9Pg[<t.3 | ||
68 | yeHEeAyL | ||
69 | {t,=!K·Z6 | ||
70 | 64 | 32XEC!9m | |
65 | >L9|k=d^ | ||
66 | [],N"zBT | ||
67 | IN<7GVk) | ||
68 | vA;?HCi@E | ||
69 | )xc.#:B7 | ||
70 | qACS/`k0& | ||
Max diff block lines reached; 3284/4902 bytes (66.99%) of diff not shown. |
Offset 12182, 1064 lines modified | Offset 12182, 1064 lines modified | ||
12182 | ··[·95780]··gnatcoll__sql_impl__field_list__insert__B_48__L_49__G5958s___XDL_1 | 12182 | ··[·95780]··gnatcoll__sql_impl__field_list__insert__B_48__L_49__G5958s___XDL_1 |
12183 | ··[·957c3]··gnatcoll__sql_impl__assignment_lists__insert_space__B_22__S8053s___XA | 12183 | ··[·957c3]··gnatcoll__sql_impl__assignment_lists__insert_space__B_22__S8053s___XA |
12184 | ··[·95809]··gnatcoll__sql_impl__field_list__insert__4__B_35__B_38__L_39__R5757s | 12184 | ··[·95809]··gnatcoll__sql_impl__field_list__insert__4__B_35__B_38__L_39__R5757s |
12185 | ··[·9584d]··S1686b | 12185 | ··[·9584d]··S1686b |
12186 | ··[·95854]··gnatcoll__sql_impl__field_list__previous__2 | 12186 | ··[·95854]··gnatcoll__sql_impl__field_list__previous__2 |
12187 | ··[·95880]··gnatcoll__sql_impl__field_pointers__T1670s | 12187 | ··[·95880]··gnatcoll__sql_impl__field_pointers__T1670s | Diff chunk too large, falling back to line-by-line diff (1050 lines added, 1050 lines removed) |
12188 | ··[·958ab]··gnatcoll__sql_impl__field_list__first_element__B_25__S5598s___XA | 12188 | ··[·958ab]··gnatcoll__sql_impl__field_list__first_element__B_25__S5598s___XA |
12189 | ··[·958ec]··gnatcoll__sql_impl__ | 12189 | ··[·958ec]··gnatcoll__sql_impl__time_to_sql__B_15__TTS1686bSP1___U |
12190 | ··[·9592 | 12190 | ··[·95923]··gnatcoll__sql_impl__assignment_lists__implementation__adjust |
12191 | ··[·959 | 12191 | ··[·95960]··R7778s |
12192 | ··[·9596 | 12192 | ··[·95967]··gnatcoll__sql_impl__assignment_lists__to_vector |
12193 | ··[·959 | 12193 | ··[·95997]··gnatcoll__sql_impl__field_list__last_element__B_56__S6309s___XA |
12194 | ··[·959d | 12194 | ··[·959d7]··gnatcoll__sql_impl__field_list__element__B_20__G5521s__2___U |
12195 | ··[·95a1 | 12195 | ··[·95a14]··gnatcoll__sql_impl__field_list__insert__B_34__R5673s__4 |
12196 | ··[·95a4c]··gnatcoll__sql_impl__ | 12196 | ··[·95a4c]··gnatcoll__sql_impl__field_list__implementation__unlock |
12197 | ··[·95a | 12197 | ··[·95a83]··gnatcoll__sql_impl__assignment_lists__reserve_capacity__B_34__B_35__T8557s___XA |
12198 | ··[·95ad | 12198 | ··[·95ad3]··gnatcoll__sql_impl__field_list__insert__B_46__L_47__T5913s |
12199 | ··[·95b0 | 12199 | ··[·95b0e]··system__img_lli__image_long_long_integer |
12200 | ··[·95b | 12200 | ··[·95b37]··gnatcoll__sql_impl__field_list__insert__B_50__L_51__T6007s___XVE |
12201 | ··[·95b | 12201 | ··[·95b78]··R8965s |
12202 | ··[·95b | 12202 | ··[·95b7f]··gnatcoll__sql_impl__field_list__find |
12203 | ··[·95b | 12203 | ··[·95ba4]··gnatcoll__sql_impl__field_list__reserve_capacity__B_64__array_index_subtype___U |
12204 | ··[·95b | 12204 | ··[·95bf4]··gnatcoll__sql_impl__field_list__contains |
12205 | ··[·95 | 12205 | ··[·95c1d]··R8809s |
12206 | ··[·95c | 12206 | ··[·95c24]··gnatcoll__sql_impl__table_sets__replace_element |
12207 | ··[·95c | 12207 | ··[·95c54]··gnatcoll__sql_impl__money_image__TimgS___XA |
12208 | ··[·95c8 | 12208 | ··[·95c80]··gnatcoll__sql_impl__field_list__insert__4__B_35__B_38__L_39__S5759s |
12209 | ··[·95cc | 12209 | ··[·95cc4]··gnatcoll__sql_impl__field_list__insert__B_50__TS5999sP1___U |
12210 | ··[·95 | 12210 | ··[·95d00]··gnatcoll__sql_impl__field_list__prepend__2 |
12211 | ··[·95d2 | 12211 | ··[·95d2b]··gnatcoll__sql_impl__to_string__L_8__B1182b__TS1191bS__11 |
12212 | ··[·95d | 12212 | ··[·95d64]··gnatcoll__sql_impl__assignment_lists__read__2 |
12213 | ··[·95d | 12213 | ··[·95d92]··gnatcoll__sql_impl__assignment_lists__read__3 |
12214 | ··[·95d | 12214 | ··[·95dc0]··gnatcoll__sql_impl__assignment_lists__read__4 |
12215 | ··[·95 | 12215 | ··[·95dee]··gnatcoll__sql_impl__table_sets__intersection__iterate_left__iterate__internal_with_pos__2 |
12216 | ··[·95e | 12216 | ··[·95e48]··gnatcoll__sql_impl__table_sets__union__iterate_right__iterate__internal_with_pos__2 |
12217 | ··[·95e9 | 12217 | ··[·95e9c]··gnatcoll__sql_impl__assignment_lists__element |
12218 | ··[·95e | 12218 | ··[·95eca]··gnatcoll__sql_impl__field_list__adjust__B_3__T5136s__2___XDL_0 |
12219 | ··[·95f | 12219 | ··[·95f09]··gnatcoll__sql_impl__field_list__delete__B_13__L_14__T5388s___L |
12220 | ··[·95f | 12220 | ··[·95f48]··gnatcoll__sql_impl__table_sets__symmetric_difference__iterate_right__iterate__internal_with_pos__2 |
12221 | ··[·95fa | 12221 | ··[·95fab]··gnatcoll__sql_impl__assignment_lists__adjust__2 |
12222 | ··[·95fd | 12222 | ··[·95fdb]··gnatcoll__sql_impl__field_list__insert__B_35__S5708s__4 |
12223 | ··[·9601 | 12223 | ··[·96013]··gnatcoll__sql_impl__field_list__delete__B_13__L_14__T5388s___U |
12224 | ··[·960 | 12224 | ··[·96052]··gnatcoll__sql_impl__string_image__B_17__Tnew_strS |
12225 | ··[·960 | 12225 | ··[·96084]··gnatcoll__sql_impl__table_sets__set_next |
12226 | ··[·960a | 12226 | ··[·960ad]··gnatcoll__sql_impl__to_string__L_8__B1157b__TS1170bS__11 |
12227 | ··[·960e | 12227 | ··[·960e6]··gnatcoll__sql_impl__assignment_lists__insert_space__2 |
12228 | ··[·9611c]·· | 12228 | ··[·9611c]··gnatcoll__sql_impl__field_list__implementation__unbusy |
12229 | ··[·961 | 12229 | ··[·96153]··S931b |
12230 | ··[·961 | 12230 | ··[·96159]··gnatcoll__sql_impl__field_list__last_element__B_56__G6308s___U |
12231 | ··[·9619 | 12231 | ··[·96198]··gnatcoll__sql_impl__table_sets__query_element__B_19__TlockS |
12232 | ··[·961 | 12232 | ··[·961d4]··gnatcoll__sql_impl__assign__to_ref |
12233 | ··[·961f | 12233 | ··[·961f7]··gnatcoll__sql_impl__table_sets__ht_ops__adjustXnn |
12234 | ··[·96229]··gnatcoll__sql_impl__assignment_lists__ | 12234 | ··[·96229]··gnatcoll__sql_impl__assignment_lists__pseudo_reference |
12235 | ··[·9626 | 12235 | ··[·96260]··gnatcoll__sql_impl__assignment_lists__delete__B_7__TS7593sP1___U |
12236 | ··[·962 | 12236 | ··[·962a1]··gnatcoll__sql_impl__assignment_lists__no_index |
12237 | ··[·962d | 12237 | ··[·962d0]··gnatcoll__sql_impl__table_sets__ht_types__implementation__adjust |
12238 | ··[·963 | 12238 | ··[·96311]··gnatcoll__sql_impl__assignment_lists__prepend |
12239 | ··[·963 | 12239 | ··[·9633f]··C7032s |
12240 | ··[·9634 | 12240 | ··[·96346]··gnatcoll__sql_impl__to_string__TTS944bSP1__19___XD |
12241 | ··[·9637 | 12241 | ··[·96379]··gnatcoll__sql_impl__field_list__append_slow_path |
12242 | ··[·963 | 12242 | ··[·963aa]··gnatcoll__sql_impl__field_list__element__B_19__G5489s___XDL_1 |
12243 | ··[·963 | 12243 | ··[·963e8]··gnatcoll__sql_impl__field_list__insert__B_35__TS5708sP1__4___U |
12244 | ··[·9642 | 12244 | ··[·96427]··gnatcoll__sql_impl__assignment_lists__update_element__2 |
12245 | ··[·964 | 12245 | ··[·9645f]··C5914s |
12246 | ··[·964 | 12246 | ··[·96466]··gnatcoll__sql_impl__assignment_lists__adjust__B_3__T7472s__2___XDL_0 |
12247 | ··[·964a | 12247 | ··[·964ab]··gnatcoll__sql_impl__field_list__update_element__2 |
12248 | ··[·964 | 12248 | ··[·964dd]··gnatcoll__sql_impl__assignment_lists__read__L_28__T8341s___U |
12249 | ··[·96 | 12249 | ··[·9651a]··R7594s |
12250 | ··[·965 | 12250 | ··[·96521]··gnatcoll__sql_impl__assignment_lists__insert__B_21__src_index_subtype___L |
12251 | ··[·9656 | 12251 | ··[·9656b]··gnatcoll__sql_impl__assignment_lists__no_element |
12252 | ··[·965 | 12252 | ··[·9659c]··gnatcoll__sql_impl__assignment_lists__adjust__B_3__T7473s__2___XA |
12253 | ··[·965 | 12253 | ··[·965de]··gnatcoll__sql_impl__table_sets__difference__iterate_left__iterate__wrapper__2 |
12254 | ··[·966 | 12254 | ··[·9662c]··gnatcoll__sql_impl__assignment_lists__insert__B_21__src_index_subtype___U |
12255 | ··[·966 | 12255 | ··[·96676]··gnatcoll__sql_impl__table_sets__symmetric_difference__iterate_source_when_empty_target__iterate__internal_with_pos__L_18__T9148s___L |
12256 | ··[·96 | 12256 | ··[·966fb]··gnatcoll__sql_impl__assignment_lists__reverse_iterate__TbusyS___XVS |
12257 | ··[·967 | 12257 | ··[·9673f]··G6618s_LAST |
12258 | ··[·967 | 12258 | ··[·9674b]··gnatcoll__sql_impl__field_list__adjust__2__B_3__L_4__S5150s___XA |
12259 | ··[·967 | 12259 | ··[·9678c]··R6726s |
12260 | ··[·967 | 12260 | ··[·96793]··gnatcoll__sql_impl__table_sets__symmetric_difference__iterate_source_when_empty_target__iterate__internal_with_pos__L_18__T9148s___U |
12261 | ··[·9681 | 12261 | ··[·96818]··gnatcoll__sql_impl__table_sets__iterate__process_node |
12262 | ··[·9684 | 12262 | ··[·9684e]··gnatcoll__sql_impl__field_pointers__adjust__4 |
12263 | ··[·9687 | 12263 | ··[·9687c]··gnatcoll__sql_impl__append_if_not_aggregate__3 |
12264 | ··[·968 | 12264 | ··[·968ab]··gnatcoll__sql_impl__table_sets__union__iterate_right__Tlock_rightS__2___XVS |
12265 | ··[·968 | 12265 | ··[·968f7]··gnatcoll__sql_impl__append_if_not_aggregate__5 |
12266 | ··[·969 | 12266 | ··[·96926]··gnatcoll__sql_impl__append_if_not_aggregate__7 |
12267 | ··[·969 | 12267 | ··[·96955]··gnatcoll__sql_impl__append_if_not_aggregate__9 |
12268 | ··[·969 | 12268 | ··[·96984]··gnatcoll__sql_impl__comparison_criteria |
12269 | ··[·969a | 12269 | ··[·969ac]··gnatcoll__sql_impl__sql_field_pointers__T2269s |
12270 | ··[·969 | 12270 | ··[·969db]··S1191b |
12271 | ··[·969e | 12271 | ··[·969e2]··gnatcoll__sql_impl__field_list__insert__B_34__G5674s__4___U |
12272 | ··[·96a | 12272 | ··[·96a1e]··gnatcoll__sql_impl__boolean_image |
12273 | ··[·96a | 12273 | ··[·96a40]··gnatcoll__sql_impl__to_string__TTS1437bSP1__15___L |
12274 | ··[·96a7 | 12274 | ··[·96a73]··gnatcoll__sql_impl__field_list__delete__B_13__S5385s |
12275 | ··[·96aa | 12275 | ··[·96aa8]··gnatcoll__sql_impl__to_string__TTS1437bSP1__15___U |
12276 | ··[·96ad | 12276 | ··[·96adb]··gnatcoll__sql_impl__table_sets__intersection |
12277 | ··[·96b0 | 12277 | ··[·96b08]··gnatcoll__sql_impl__field_list__iterate__TbusyS |
12278 | ··[·96b3 | 12278 | ··[·96b38]··gnatcoll__sql_impl__field_list__replace_element__2 |
12279 | ··[·96b | 12279 | ··[·96b6b]··R5354s |
12280 | ··[·96b7 | 12280 | ··[·96b72]··gnatcoll__sql_impl__sql_criteria_pointers__set__S7150s___XA |
12281 | ··[·96b | 12281 | ··[·96bae]··R8128s |
12282 | ··[·96b | 12282 | ··[·96bb5]··gnatcoll__sql_impl__field_list__assign |
12283 | ··[·96b | 12283 | ··[·96bdc]··gnatcoll__sql_impl__field_list__next__4 |
12284 | ··[·96 | 12284 | ··[·96c04]··gnatcoll__sql_impl__field_list__query_element__2 |
12285 | ··[·96c | 12285 | ··[·96c35]··R8079s |
12286 | ··[·96c | 12286 | ··[·96c3c]··gnatcoll__sql_impl__assignment_lists__implementation__initialize__2 |
12287 | ··[·96c | 12287 | ··[·96c80]··R9128s |
12288 | ··[·96c | 12288 | ··[·96c87]··gnatcoll__sql_impl__field_list__insert__3 |
12289 | ··[·96c | 12289 | ··[·96cb1]··gnatcoll__sql_impl__field_list__insert__4 |
12290 | ··[·96c | 12290 | ··[·96cdb]··gnatcoll__sql_impl__field_list__insert__5 |
12291 | ··[·96 | 12291 | ··[·96d05]··gnatcoll__sql_impl__field_list__insert__6 |
12292 | ··[·96d2 | 12292 | ··[·96d2f]··gnatcoll__sql_impl__table_sets__overlap |
12293 | ··[·96d | 12293 | ··[·96d57]··gnatcoll__sql_impl__table_sets__ht_types__implementation__finalize |
12294 | ··[·96d | 12294 | ··[·96d9a]··C6008s___XVL1 |
12295 | ··[·96d | 12295 | ··[·96da8]··gnatcoll__sql_impl__table_sets__union__iterate_right__Tlock_leftS__2___XVS |
12296 | ··[·96d | 12296 | ··[·96df3]··gnatcoll__sql_impl__time_to_sql__B_15__TS1686bS |
12297 | ··[·96 | 12297 | ··[·96e23]··R5561s |
12298 | ··[·96e2 | 12298 | ··[·96e2a]··gnatcoll__sql_impl__table_sets__difference__2 |
12299 | ··[·96e | 12299 | ··[·96e58]··gnatcoll__sql_impl__field_list__Oconcat |
12300 | ··[·96e | 12300 | ··[·96e80]··gnatcoll__sql_impl__date_to_sql__B_16__T1715b___XA |
12301 | ··[·96eb | 12301 | ··[·96eb3]··gnatcoll__sql_impl__sql_field_pointers__get_refcount |
12302 | ··[·96ee | 12302 | ··[·96ee8]··gnatcoll__sql_impl__assignment_lists__first__3 |
12303 | ··[·96 | 12303 | ··[·96f17]··R8912s |
12304 | ··[·96f | 12304 | ··[·96f1e]··gnatcoll__sql_impl__assignment_lists__find__B_8__L_9__T7665s___L |
12305 | ··[·96f5 | 12305 | ··[·96f5f]··gnatcoll__sql_impl__table_sets__ht_ops__first__2Xnn |
12306 | ··[·96f | 12306 | ··[·96f93]··gnatcoll__sql_impl__parameters__finalize__4 |
12307 | ··[·96f | 12307 | ··[·96fbf]··gnatcoll__sql_impl__assignment_lists__reverse_iterate__TbusyS |
Max diff block lines reached; 16714/148789 bytes (11.23%) of diff not shown. |