blob: e9d3b6fc36479009648694a2088028b252cd943a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Registering DPL Secondary Keys</title>
<link rel="stylesheet" href="gettingStarted.css" type="text/css" />
<meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
<link rel="start" href="index.html" title="Berkeley DB Installation and Build Guide" />
<link rel="up" href="upgrade_4_8_toc.html" title="Chapter 15. Upgrading Berkeley DB 4.7 applications to Berkeley DB 4.8" />
<link rel="prev" href="upgrade_4_8_toc.html" title="Chapter 15. Upgrading Berkeley DB 4.7 applications to Berkeley DB 4.8" />
<link rel="next" href="upgrade_4_8_mpool.html" title="Minor Change in Behavior of DB_MPOOLFILE->get" />
</head>
<body>
<div xmlns="" class="navheader">
<div class="libver">
<p>Library Version 12.1.6.1</p>
</div>
<table width="100%" summary="Navigation header">
<tr>
<th colspan="3" align="center">Registering DPL Secondary Keys</th>
</tr>
<tr>
<td width="20%" align="left"><a accesskey="p" href="upgrade_4_8_toc.html">Prev</a> </td>
<th width="60%" align="center">Chapter 15. Upgrading Berkeley DB 4.7 applications to Berkeley DB 4.8</th>
<td width="20%" align="right"> <a accesskey="n" href="upgrade_4_8_mpool.html">Next</a></td>
</tr>
</table>
<hr />
</div>
<div class="sect1" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h2 class="title" style="clear: both"><a id="upgrade_4_8_dpl"></a>Registering DPL Secondary Keys</h2>
</div>
</div>
</div>
<p>
Entity subclasses that define secondary keys must now be
registered prior to storing an instance of the class. This can
be done in two ways:
</p>
<div class="itemizedlist">
<ul type="disc">
<li>
<p>
The
<code class="methodname">EntityModel.registerClass()</code>
method may be called to register the subclass before
opening the entity store.
</p>
</li>
<li>
<p>
The
<code class="methodname">EntityStore.getSubclassIndex()</code>
method may be called to implicitly register the
subclass after opening the entity store.
</p>
</li>
</ul>
</div>
<p>
Failure to register the entity subclass will result in an
<code class="classname">IllegalArgumentException</code> the first
time an attempt is made to store an instance of the subclass.
An exception will not occur if instances of the subclass have
previously been stored, which allows existing applications to
run unmodified in most cases.
</p>
<p>
This behavioral change was made to increase reliability. In
several cases, registering an entity subclass has been
necessary as a workaround. The requirement to register the
subclass will ensure that such errors do not occur in deployed
applications.
</p>
</div>
<div class="navfooter">
<hr />
<table width="100%" summary="Navigation footer">
<tr>
<td width="40%" align="left"><a accesskey="p" href="upgrade_4_8_toc.html">Prev</a> </td>
<td width="20%" align="center">
<a accesskey="u" href="upgrade_4_8_toc.html">Up</a>
</td>
<td width="40%" align="right"> <a accesskey="n" href="upgrade_4_8_mpool.html">Next</a></td>
</tr>
<tr>
<td width="40%" align="left" valign="top">Chapter 15. Upgrading Berkeley DB 4.7 applications to Berkeley DB 4.8 </td>
<td width="20%" align="center">
<a accesskey="h" href="index.html">Home</a>
</td>
<td width="40%" align="right" valign="top"> Minor Change in Behavior of DB_MPOOLFILE->get</td>
</tr>
</table>
</div>
</body>
</html>
|