~statik/ubuntu/maverick/erlang/erlang-merge-testing

« back to all changes in this revision

Viewing changes to lib/kernel/src/notes_history.sgml

  • Committer: Bazaar Package Importer
  • Author(s): Sergei Golovan
  • Date: 2009-05-01 10:14:38 UTC
  • mfrom: (3.1.4 sid)
  • Revision ID: james.westby@ubuntu.com-20090501101438-6qlr6rsdxgyzrg2z
Tags: 1:13.b-dfsg-2
* Cleaned up patches: removed unneeded patch which helped to support
  different SCTP library versions, made sure that changes for m68k
  architecture applied only when building on this architecture.
* Removed duplicated information from binary packages descriptions.
* Don't require libsctp-dev build-dependency on solaris-i386 architecture
  which allows to build Erlang on Nexenta (thanks to Tim Spriggs for
  the suggestion).

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
<!doctype chapter PUBLIC "-//Stork//DTD chapter//EN">
2
 
<!-- 
3
 
 ``The contents of this file are subject to the Erlang Public License,
4
 
 Version 1.1, (the "License"); you may not use this file except in
5
 
 compliance with the License. You should have received a copy of the
6
 
 Erlang Public License along with this software. If not, it can be
7
 
 retrieved via the world wide web at http://www.erlang.org/.
8
 
 
9
 
 Software distributed under the License is distributed on an "AS IS"
10
 
 basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
11
 
 the License for the specific language governing rights and limitations
12
 
 under the License.
13
 
 
14
 
 The Initial Developer of the Original Code is Ericsson Utvecklings AB.
15
 
 Portions created by Ericsson are Copyright 1999, Ericsson Utvecklings
16
 
 AB. All Rights Reserved.''
17
 
 
18
 
     $Id$
19
 
-->
20
 
<chapter>
21
 
  <header>
22
 
    <title>KERNEL Release Notes
23
 
    <prepared>Kenneth Lundin
24
 
    <docno>
25
 
    <date>1997-11-17
26
 
    <rev>F
27
 
    <file>notes.sgml
28
 
  </header>
29
 
 
30
 
  <p>This document describes the changes made to the Kernel application.
31
 
 
32
 
 
33
 
  <section>
34
 
    <title>Kernel 1.3.2</title>
35
 
 
36
 
    <section>
37
 
      <title>Fixed Bugs and malfunctions</title>
38
 
      <list>
39
 
        <item>
40
 
          <p><c>file:stop</c> does not hang any more.
41
 
          <p>Own Id:OTP-1404
42
 
 
43
 
        <item>
44
 
          <p><c>net_kernel</c> could in some situations send two
45
 
          nodeup messages to the monitor processes (processes that
46
 
          have evaluated <c>net_kernel:monitor_nodes()</c>).
47
 
 
48
 
          <p>This problem could make <c>global</c> hang when several
49
 
          nodes connected.
50
 
 
51
 
          <p>Own Id:OTP-1418; OTP-1127, OTP-1412
52
 
          <br>Aux Id:tir-d-088
53
 
 
54
 
        <item>
55
 
          <p><c>net_kernel</c> did not send nodedown messages for
56
 
          allowed nodes. If net_kernel:allow(Nodes) was used, no
57
 
          nodedown messages at all were sent to monitor processes
58
 
          net_kernel.
59
 
 
60
 
          <p>nodedown messages are now sent for allowed nodes but are
61
 
            ignored for connection attempts from disallowed nodes.
62
 
 
63
 
          <p>Own Id:OTP-1419
64
 
 
65
 
        <item>
66
 
          <p><c>application_controller</c> had sync problems in the
67
 
            takeover phase when an application was remote started.
68
 
 
69
 
          <p>Own Id:OTP-1426
70
 
 
71
 
        <item>
72
 
          <p><c>application_controller</c> did sometimes report
73
 
            <c>{error,{not_started,App}}</c> even though the
74
 
            application in question has been started on another node.
75
 
 
76
 
          <p>Own Id:OTP-1454
77
 
          <br>Aux Id:HA52440
78
 
 
79
 
        <item>
80
 
          <p><c>application_controller</c> could hang due to a
81
 
            deadlock situation during startup in a distributed system.
82
 
 
83
 
          <p>Own Id:OTP-1472
84
 
 
85
 
      </list>
86
 
    </section>
87
 
 
88
 
    <section>
89
 
      <title>Improvements and new features</title>
90
 
      <list>
91
 
        <item>
92
 
          <p>The support for dynamic loading of drivers in module <c>erl_ddll</c> is enhanced with
93
 
            reference counting of loaded drivers and automatic unloading of drivers when the "owner"
94
 
            process terminates.
95
 
          <p>Own Id:OTP-1460
96
 
        <item>
97
 
          <p>The <c>os</c> module has got 2 new functions <c>getenv/1</c> to read environment variables from the hos operating system and <c>find_executable/1,2</c> to find executable programs using a
98
 
            search path.
99
 
          <p>Own Id:OTP-1461
100
 
        <item>
101
 
          <p>A new function <c>application:which_application(Module)</c> which returns the 
102
 
            application that <c>Module</c> belongs to.
103
 
          <p>Own Id:OTP-1008
104
 
      </list>
105
 
 
106
 
    </section>
107
 
  </section>
108
 
 
109
 
  <section>
110
 
    <title>Kernel 1.3.1</title>
111
 
 
112
 
    <section>
113
 
      <title>Fixed Bugs and malfunctions</title>
114
 
      <list>
115
 
        <item>
116
 
          <p>Malformed string/list as argument to unix:cmd/1 caused entire
117
 
          ERTS to crash.
118
 
          <p>Own Id: OTP-1384
119
 
        <item>
120
 
          <p>It was not possible to convert a non distributed system
121
 
            into a distributed system as stated in the net_kernel
122
 
            reference manual.
123
 
            Note that this is not the recommended way to start a
124
 
            distributed system.
125
 
          <p>Own Id: OTP-1393
126
 
        <item>
127
 
          <p><c>net_adm:world/1</c> was broken on Windows NT, since it relied
128
 
          on <c>unix:cmd/1</c>.
129
 
          <p>Own Id: OTP-1397
130
 
        <item>
131
 
          <p>The <c>disk_log_server</c>  now clears it's state correctly 
132
 
                when a disk_log process terminates.
133
 
          <p>Own Id: OTP-1402
134
 
      </list>
135
 
    </section>
136
 
  </section>
137
 
 
138
 
  <section>
139
 
    <title>Kernel 1.3</title>
140
 
 
141
 
    <section>
142
 
      <title>Improvements and new features</title>
143
 
 
144
 
      <list>
145
 
        <item>
146
 
          <p><c>net_ticktime</c> is configurable through the <c>kernel</c>
147
 
            application. <c>net_ticktime</c> specifies the time within which
148
 
            a non responding node will be considered to be down.
149
 
 
150
 
        <item>
151
 
          <p><c>-boot_var</c> flag read by <c>init</c>. This flag is used
152
 
            to set a path variable in the boot script. If applications
153
 
            will be placed under another directory than $ROOT/lib in an
154
 
            embedded system this flag can be used.
155
 
        
156
 
        <item>
157
 
          <p>A new function for controlling execution of applications
158
 
            is added; <c>application:permit/2</c>.  The function
159
 
            controls which applications are permitted to execute on
160
 
            the node.
161
 
 
162
 
        <item>
163
 
          <p>A new configuration parameter <c>permissions</c>
164
 
            specifies the default permission an application has when
165
 
            it is loaded.
166
 
 
167
 
        <item><p>New functions in <c>application</c>. <br>
168
 
            <c>application:load(App, Dist)</c> - set (and check!)
169
 
            distribution configuration for an application at load
170
 
            time.<br> <c>application:get_application/0,1</c> - get the
171
 
            application of a pid.
172
 
          <p>Own Id: OTP-1306
173
 
 
174
 
        <item><p><c>.config</c> files are now allowed to contain
175
 
            comments.
176
 
          <p>Own Id: OTP-1134
177
 
            <br>Aux Id: HA37561
178
 
 
179
 
        <item><p>It is now possible to specify more than one
180
 
            configuration file to <c>erl</c>, by using the command
181
 
            line flag <c>-config</c>.
182
 
 
183
 
        <item>
184
 
          <p>The code server (module <c>code</c>) did sometimes store
185
 
            relative pathnames which could cause troubles in some cases. 
186
 
            The code server is changed to always store absolute pathnames.
187
 
          <p>Own Id: OTP-1239
188
 
            <br>Aux Id: erlang/66
189
 
 
190
 
        <item>
191
 
          <p>An elucidation regarding strings in the <c>code</c> module.
192
 
            Since the <c>1.1</c> version of the kernel application the
193
 
            <c>code</c> module always returns directory (and file) names as
194
 
            strings. See the <c>code(3)</c> manual page.
195
 
          <p>It is preferable that directory names are provided as strings
196
 
            to all functions. The possibility to provide directory names
197
 
            as atoms may be removed in future releases. Module names
198
 
            should always be given as atoms and the possibility to provide
199
 
            module names as strings may be removed in future releases.
200
 
          <p>Own Id: OTP-1186
201
 
 
202
 
        <item><p> <c>code:priv_dir/1</c> was very slow and is made
203
 
            much faster now.  <p>Own Id: OTP-1339
204
 
 
205
 
        <item><p>The module <c>disk_log</c> is moved from
206
 
            <c>stdlib</c> to <c>kernel</c>, and some new functionality
207
 
            is added.  <c>disk_log</c> supports wrap and halt logs,
208
 
            the size of a log is configurable, it supports different
209
 
            file formats, and it supports replicated logs.
210
 
          <p>Own Id: OTP-1305
211
 
 
212
 
        <item>
213
 
          <p>The <c>erl_boot_server</c> is dynamically configurable.
214
 
          <p>Own Id: OTP-1275
215
 
 
216
 
        <item>
217
 
          <p>The functions <c>add_slave/1</c>, <c>delete_slave/1</c> and
218
 
            <c>which_slaves/0</c> are added to the <c>erl_boot_server</c>.
219
 
 
220
 
        <item><p> New option <c>raw</c> to <c>file:open</c> and also a
221
 
            new variant of the function which takes a list of
222
 
            options. The open with an optionlist is the recommended
223
 
            way to open a file from no on.
224
 
          <p>Own Id: OTP-1242
225
 
 
226
 
        <item>
227
 
          <p>New format for the <c>Reason</c> field when <c>{error,Reason}</c>
228
 
            is returned from functions in the <c>file</c> module. There is
229
 
            also new documentation about this in the reference manual.
230
 
            <p>Own Id: OTP-1075
231
 
        </item>
232
 
 
233
 
        <item><p> The configuration parameter <c>os</c> is removed
234
 
            from <c>kernel.app</c>.  The function <c>os:type()</c> is
235
 
            used instead.
236
 
          <p>Own Id: OTP-1277
237
 
            
238
 
      </list>
239
 
    </section>
240
 
 
241
 
    <section>
242
 
      <title>Fixed Bugs and malfunctions</title>
243
 
      <list>
244
 
        <item>
245
 
          <p><c>net_adm:world()</c> is corrected on Windows NT.
246
 
          <p>Own Id: OTP-1219
247
 
        <item>
248
 
        <p><c>file:list_dir("c:")</c> returns "No such file..." on NT
249
 
        <p>Own Id:OTP-1237
250
 
        <item>
251
 
          <p>Bad call to <c>c:c/1</c> did crash the Erlang shell.
252
 
            Solved by addition of a better test that a module name is correct.
253
 
          <p>Own Id: OTP-1256
254
 
            <br>Aux Id: erlang/73
255
 
 
256
 
        <item>
257
 
          <p>The <c>rpc:cast</c> function was synchronous when casted function
258
 
            call was performed at the current node.
259
 
          <p>Own Id: OTP-1292
260
 
        </list>
261
 
      
262
 
    </section>
263
 
 
264
 
    <section>
265
 
      <title>Incompatibilities with Kernel 1.1.1</title>
266
 
      <list>
267
 
        <item>
268
 
          <p>New format for the <c>Reason</c> field when <c>{error,Reason}</c>
269
 
            is returned from functions in the <c>file</c> module. 
270
 
            This is an interface change (the format of <c> Reason</c> but
271
 
            it will only break a minimal amount (if any) of old code since
272
 
            the previous format of <c>Reason</c> was more or less useless
273
 
            in match operations.  There where also errors in the documentation
274
 
            and other inconsistencies with the old format.
275
 
            <p>The most likely places where old code needs to be adjusted is where the  highlevel functions <c>consult</c>, <c>path_consult</c>, <c>eval</c> and <c>path_eval</c> in combination with a  match for the result <c>{error,open}</c> is used.
276
 
            <p>Own Id: OTP-1075
277
 
        </item>
278
 
        </list>
279
 
    </section>
280
 
 
281
 
    <section>
282
 
      <title>Known bugs and problems</title>
283
 
      
284
 
      <p>-
285
 
    </section>
286
 
  </section>
287
 
 
288
 
  <section>
289
 
    <title>Kernel 1.1.1</title>
290
 
 
291
 
    <section>
292
 
      <title>Improvements and new feature</title>
293
 
 
294
 
      <p>-
295
 
    </section>
296
 
 
297
 
    <section>
298
 
      <title>Fixed Bugs and malfunctions</title>
299
 
      
300
 
      <list>
301
 
 
302
 
        <item>
303
 
          <p><c>application:get_env/1</c> returned <c>undefined</c>
304
 
            for all parameters during startup of an application.
305
 
 
306
 
          <p>Own Id: OTP-1079
307
 
 
308
 
        <item>
309
 
          <p>When synchronization of mandatory node fails using the
310
 
            <c>sync_nodes_mandatory</c> configuration parameter , the
311
 
            node should be takendown, but it wasn't.
312
 
 
313
 
          <p>Own Id: OTP-1083
314
 
 
315
 
        <item>
316
 
          <p>Manual page for file corrected.
317
 
 
318
 
          <p>Own Id: OTP-1102
319
 
 
320
 
        <item>
321
 
          <p>Attempt to start an application when already running
322
 
            causes error.  Now <c>application:start/1,2</c> returns
323
 
            <c>{error,{already_started,Name}}</c> if the application
324
 
            is running.
325
 
 
326
 
          <p>Own Id: OTP-1111
327
 
            <br>Aux Id: tir-f-087, tir-d-087
328
 
 
329
 
        <item>
330
 
          <p>Restart (<c>init:restart/0</c>) of system did not work
331
 
            after a software upgrade. Started using the now old
332
 
            version.
333
 
 
334
 
          <p>Own Id: OTP-1113
335
 
            <br>Aux Id: HA37170
336
 
 
337
 
        <item>
338
 
          <p><c>init:stop/0</c> did not work after a restart
339
 
          (<c>init:restart/0</c>).
340
 
 
341
 
          <p>Own Id: OTP-1117
342
 
 
343
 
      </list>
344
 
    </section>
345
 
 
346
 
    <section>
347
 
      <title>Incompatibilities with Kernel 1.1</title>
348
 
 
349
 
      <p>-
350
 
    </section>
351
 
 
352
 
    <section>
353
 
      <title>Known bugs and problems</title>
354
 
      
355
 
      <p>-
356
 
    </section>
357
 
  </section>
358
 
 
359
 
  <section>
360
 
    <title>Kernel 1.1</title>
361
 
 
362
 
    <section>
363
 
      <title>Improvements and new feature</title>
364
 
      <list>
365
 
        <item>
366
 
          <p>Application configuration paramaters can be given from
367
 
            the command line (overrides the configuration file):
368
 
<code>
369
 
erl -Appl Key Value
370
 
</code>
371
 
 
372
 
        <item>
373
 
          <p>Load applications before start. All applications (included
374
 
            in the boot script) are loaded before the first application is
375
 
            started.
376
 
 
377
 
        <item>
378
 
          <p>Heart uses the hardware watchdog (Solaris), see heart(3).
379
 
 
380
 
        <item>
381
 
          <p>Added <c>error_logger:info_msg/1,2</c>.
382
 
 
383
 
        <item>
384
 
          <p>Support for distributed applications enhanced and
385
 
          documented.
386
 
 
387
 
      </list>
388
 
    </section>
389
 
 
390
 
    <section>
391
 
      <title>Fixed Bugs and malfunctions</title>
392
 
      
393
 
      <list>
394
 
        <item>
395
 
          <p><c>net_adm:ping(Node)</c> will never return <c>pong</c>
396
 
            if this node is not allowed (<c>net_kernel:allow/1</c>) to
397
 
            connect to <c>Node</c>.
398
 
 
399
 
        <item>
400
 
          <p><c>net_kernel:allow/1</c> handles hidden nodes. 
401
 
 
402
 
      </list>
403
 
    </section>
404
 
 
405
 
    <section>
406
 
      <title>Incompatibilities with OTP P1G</title>
407
 
      <list>
408
 
        <item>
409
 
          <p>A configuration file must have suffix .config. (For example,
410
 
            to use the file sys.config, erl -config ./sys is used)
411
 
            
412
 
        <item>
413
 
          <p>Old boot scripts won't work - generate new with systools.
414
 
 
415
 
        <item>
416
 
          <p>Added the application behaviour.
417
 
            Change in .app file: previously, <c>{start, {M, F, A}}</c>
418
 
            was specified, now <c>{mod, {M, A}}</c> should be specified,
419
 
            and <c>M:start(Type, A)</c> is called.
420
 
 
421
 
        <item>
422
 
          <p><c>code:root_dir/0</c>, <c>code:lib_dir/0</c>,
423
 
            <c>code:compiler_dir/0</c> and <c>code:uc_dir/0</c> returns
424
 
            a string.
425
 
 
426
 
        <item>
427
 
          <p>The <c>error_handler</c> is silent, e.g. it will not write
428
 
            <c>** cannot autoload: Mod **</c> and
429
 
            <c>** undefined registered name: Name **</c> to stdout any
430
 
            longer.
431
 
      </list>
432
 
    </section>
433
 
 
434
 
    <section>
435
 
      <title>Known bugs and problems</title>
436
 
      
437
 
      <p>-
438
 
    </section>
439
 
  </section>
440
 
</chapter>
441
 
 
442