-
Notifications
You must be signed in to change notification settings - Fork 3
/
release-notes-2.8
3259 lines (2163 loc) · 131 KB
/
release-notes-2.8
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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
HTML header: <title>dCache 2.8 Release Notes</title>
<!--#include virtual="/template/default-head.shtml" -->
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<!-- Bootstrap -->
<link rel="stylesheet" href="https://netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap.min.css"/>
<link rel="stylesheet" href="https://netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap-theme.min.css"/>
<!--link type="text/css" rel="stylesheet" href="jquery.tocify.css" /-->
<style type="text/css">
body {
padding-top: 20px;
}
@media (max-width: 767px) {
#toc {
position: relative;
width: 100%;
margin: 0px 0px 20px 0px;
}
}
@media print {
#toc {
display: none;
}
}
#container {
margin-left: auto;
margin-right: auto;
padding-bottom: 30px;
padding-left: 60px;
padding-right: 60px;
padding-top: 30px;
width: 1100px;
}
table.table {
font-size: 12px;
}
</style>
<div id="container">
<div id="banner">
<div id="bird_large">
<img src="/images/dcache-banner.png" class="bird"></img>
</div>
<div id="sidebar-b">
<span class="dcache-nav-bar">
<a href="/index.shtml">home</a>
|
<a href="/news.shtml">news</a>
|
<a href="/manuals/index.shtml">documentation</a>
|
<a href="/downloads/IAgree.shtml">downloads</a>
|
<a href="/feedback.shtml">feedback</a>
|
<a href="/manuals/googlesearch.shtml">search</a>
|
<a href="/imprint.shtml">imprint </a>
</span>
</div>
</div>
<div id="content">
<div class="row">
<div class="page-header">
<h1>What's new in dCache 2.8<br/>
<small>The release notes</small></h1>
<address>
<strong>Author</strong><br/>
Gerd Behrmann <[email protected]>
</address>
</div>
## Incompatibilities
- The space manager database schema has changed. It will be updated on upgrade, which
may take some time on large databases. Previous versions of dCache are not forward
compatible with the new schema and the schema has to be explicitly rolled back before
downgrading dCache.
- The Chimera database schema has changed. It will be updated on upgrade, which may take
some time on large databases.
- The `chimera-cli` utility has been replaced by `chimera`.
- In DCAP, ctime is now last attribute change time (like in Posix), not creation time.
- The output format of the `metadataof` command in PNFS manager has changed.
- Link group attributes are no longer supported.
- The space manager admin commandline interface has been rewritten, with several
commands being removed, replaced, or modified.
- The interpretation of the `spacemanager.enable.reserve-space-for-non-srm-transfers`
property has changed.
- If the NFS door and PnfsManager are hosted in the same domain then
the layouts file must have the 'pnfsmanager' service before
the 'nfs' service.
## Release 2.8.31
### Changes affecting multiple services
dCache uses a standard format to monitor the performance of various
components: in the srm door to record how quickly SRM requests are
processed (`print srm counters` command), the generic cell message
monitoring (`monitoring info` command), and pnfsmanager service (the
"Statistics" section in `info`). This release fixes a rounding error
that prevents these statistics from including long-lived requests.
### pinmanager
The pinmanager service has the `ls` command that allows the admin to
limit the results to a specific pin or all pins against some PNFS-ID.
This release fixes listing by pin id.
### srm
This release fixes the srm service so it cancels corresponding
pinmanager requests when an SRM client aborts a bring-online request.
### Changelog 2.8.30..2.8.31
<!-- git log 2.8.30..2.8.31 -no-merges -format='[%h](https://github.com/dcache/dcache/commit/%H)%n: %s%n' -->
[17d3d93](https://github.com/dcache/dcache/commit/17d3d9390e62b21b62458c86370197fa89fa130a)
: [maven-release-plugin] prepare release 2.8.31
[4240870](https://github.com/dcache/dcache/commit/424087071637d820c5860d06fe209469d3750a3b)
: common: Fix division by zero regression in gauges
[15fb0f3](https://github.com/dcache/dcache/commit/15fb0f344fa9ad71f4faffa4d991bff9097ba60f)
: common: Fix rounding error in request gauge
[2501714](https://github.com/dcache/dcache/commit/2501714045ccf913670e67a9ec6ecf8f68f282f4)
: srm: Abort pinning when cancelling bring-online requests
[98f1f30](https://github.com/dcache/dcache/commit/98f1f303f4eda629762f99a3edf0631139391775)
: pinmanager: Fix listing by id
[b2a625f](https://github.com/dcache/dcache/commit/b2a625f8ba83ad78b38b6a53b3916dae6a77c752)
: system-test: add missing dCache disposible CA certificate
[250d073](https://github.com/dcache/dcache/commit/250d073b34e054402b2cb49def64877417522296)
: system-test: add regenerated host and user credentials
[c1dc098](https://github.com/dcache/dcache/commit/c1dc0984b6de0be84a516a85cfcb647534724b88)
: [maven-release-plugin] prepare for next development iteration
## Release 2.8.30
### dcap
Update dcap door to avoid possible NullPointerException when describing
an error to the client.
### Changelog 2.8.29..2.8.30
<!-- git log 2.8.29..2.8.30 -no-merges -format='[%h](https://github.com/dcache/dcache/commit/%H)%n: %s%n' -->
[4fc4fac](https://github.com/dcache/dcache/commit/4fc4facd34d45325c77072417e5ad3018f9b6fdd)
: [maven-release-plugin] prepare release 2.8.30
[ea0e4a8](https://github.com/dcache/dcache/commit/ea0e4a892f651a4f836361ce060b4dac4fdfe70e)
: dcap: do not call toString() on error object
[4740b77](https://github.com/dcache/dcache/commit/4740b77b8d78daf7b313e8b4ae2f3c0d04f02950)
: [maven-release-plugin] prepare for next development iteration
## Release 2.8.29
### pool
When a client reads a file, the pool reads blocks of data from the
local filesystem. When reading such a block, the pool could receive
fewer bytes than requested. Previously, the pool assumed that this
only happens when the end-of-file is reached; however, this is not
guaranteed. Should this assumption be violated then the data sent to
the client will be corrupt. In practise, the pool's assumption is
true for Linux and local filesystems; however, the code has been
updated to remove this theoretical cause of corruption.
### Changelog 2.8.28..2.8.29
<!-- git log 2.8.28..2.8.29 -no-merges -format='[%h](https://github.com/dcache/dcache/commit/%H)%n: %s%n' -->
[91215c0](https://github.com/dcache/dcache/commit/91215c079738d95dda73b12caaffe5baf05e82c9)
: [maven-release-plugin] prepare release 2.8.29
[93a0cac](https://github.com/dcache/dcache/commit/93a0cac60e1afa888947b69d1eeacf4e88d9b983)
: pool: Fix read corruption in HTTP mover
[1331e5c](https://github.com/dcache/dcache/commit/1331e5ca85bff48cbc5cdee0b015f9c0fcbb7fb9)
: [maven-release-plugin] prepare for next development iteration
## Release 2.8.28
### pool
When attempting to upgrade non-precious and non-cached files (e.g. a
file marked `broken`), the receiving end of the migration module would
answer twice: first (correctly) with a failure and then (incorrectly)
with a success. This is now fixed.
### Changelog 2.8.27..2.8.28
<!-- git log 2.8.27..2.8.28 -no-merges -format='[%h](https://github.com/dcache/dcache/commit/%H)%n: %s%n' -->
[ac4af38](https://github.com/dcache/dcache/commit/ac4af38b17c36fe979a21cd652078c7eca78d472)
: [maven-release-plugin] prepare release 2.8.28
[09a439f](https://github.com/dcache/dcache/commit/09a439f738cb5ea7405c845c86196a3d1a101c2a)
: pool: Fix bug in migration module upgrade logic
[841f3bd](https://github.com/dcache/dcache/commit/841f3bda40bf9cd56dbbc229caaeec7a29787508)
: [maven-release-plugin] prepare for next development iteration
## Release 2.8.27
### Changes affecting multiple services
Various scripts, including the `dcache` command, invoke the `java`
command with a list of directories in which Java should look for
support libraries. Previously, the current working directory was
(mistakenly) included in that list. This could lead to odd behaviour;
one particular example is running a `dcache database` command from the
`/etc/dcache` directory. This release fixes this problem by excluding
the current directory.
When there is some problem in the communication between domains and
error message is logged. Previously the explanation for the problem
was logged as "null". With this release, a more descriptive
explanation is provided.
### Changelog 2.8.26..2.8.27
<!-- git log 2.8.26..2.8.27 -no-merges -format='[%h](https://github.com/dcache/dcache/commit/%H)%n: %s%n' -->
[6971f30](https://github.com/dcache/dcache/commit/6971f3012f4c1a30544ca9c99f8f842cf6fa9f39)
: [maven-release-plugin] prepare release 2.8.27
[01415de](https://github.com/dcache/dcache/commit/01415de7d3c47522d581a2822796d61d6f1c6208)
: tunnel: use toString if IOException#getMessage returns null
[d810424](https://github.com/dcache/dcache/commit/d8104242b8f527a49bf94518f8ab54d93cbe4e71)
: Exclude cwd from classpath
[4a6b7cc](https://github.com/dcache/dcache/commit/4a6b7cc95a54dbaa3c19fb0b5141c5dc8d6acad7)
: [maven-release-plugin] prepare for next development iteration
## Release 2.8.26
### Changes affecting multiple services
This patch fixes a race condition in Chimera that affects the nfs door
and the pnfsmanager service. The effect is that, if two clients
attempt to delete the same target (a file, link or directory) at the
same time then the nlink count for the parent directory is decreased
twice. "At the same time" means within the time taken to process the
deletion; this is instance-specific but should be much less than 1 ms
for well-configured systems. Sites can repare any incorrect nlinks
with the following SQL:
UPDATE t_inodes SET inlink = (
SELECT COUNT(*) FROM t_dirs WHERE t_inodes.ipnfsid = t_dirs.iparent
) WHERE itype = 16384;
This is safe to run on a running production instance, but may take
some time and will affect dCache's responsiveness while running.
### gplazma
The description for how to migrate away from using the forbidden
`useGPlazmaAuthorizationModule` and `useGPlazmaAuthorizationCell`
properties had caused confusion. The description has now been updated
to be more explicit.
### httpd
Fix filtering boxes and sorting on Pool Admin, Pool Usage, Poolgroups,
Space Tokens and Tape Transfer Queue.
### srm
Uploading a file with SRM involves three steps: preparing for the
upload (`srmPrepareToPut`), uploading the file, marking the upload
finished (`srmPutDone`). The third step can fail but previously the
response from dCache is always `Upload failed.`. With this release, a
meaningful error message is returned.
### Changelog 2.8.25..2.8.26
<!-- git log 2.8.25..2.8.26 -no-merges -format='[%h](https://github.com/dcache/dcache/commit/%H)%n: %s%n' -->
[a9d4f3c](https://github.com/dcache/dcache/commit/a9d4f3cdf4111aacd1e0d270dc5152d3fee91690)
: [maven-release-plugin] prepare release 2.8.26
[18ca9d0](https://github.com/dcache/dcache/commit/18ca9d01333a0f8d049eb2a2d5059a17620c5869)
: gplazma: update error message for forbidden properties
[486aeb5](https://github.com/dcache/dcache/commit/486aeb590a7ca1430171c40b544537f0cb1e66a0)
: (2.8) webadmin: make jquery selector specific to individual tables
[b1142b0](https://github.com/dcache/dcache/commit/b1142b0e28632a479594e077d0c4b27198d38bb7)
: (2.8) webadmin: restore missing components to respect jquery script options
[c93f214](https://github.com/dcache/dcache/commit/c93f2145c3cdcce1dbe25f945fba2b2718ed7d4f)
: srm: include the reason why upload failed
[a3c3ae6](https://github.com/dcache/dcache/commit/a3c3ae68d312a825422e2f6a4f82217769904bee)
: chimera: fix race condition on remove
[92251fd](https://github.com/dcache/dcache/commit/92251fde0516d7a7c732a06f0e711d5fc19ba420)
: webadmin: ensure unique id attributes for all (currently) tested UI elements
[4cf15d9](https://github.com/dcache/dcache/commit/4cf15d97828e45456a01d9f227675050847f16b5)
: [maven-release-plugin] prepare for next development iteration
## Release 2.8.25
### ftp
Fix default value for `ftp.authz.readonly` for plain (unencrypted)
doors. This restores the default value to the dCache v2.6 default
value of `true`.
The response from the plain (unencrypted) ftp door if the user
specifies the wrong password is badly formed. Althogh it is possible
that some clients are robust against such incorrect responses, with
this release the ftp door responds correctly.
### webdav
Fixes a bug where, if a double-slash is present, all parts of the path
leading up to the double-slash are ignored; for example, with the bug,
a path like `/a/b//c/d` is handled as if `/c/d` was specified. With
this release, double-slashes are treated like single slashes; the
above example is handled as if `/a/b/c/d` was specified.
Fix the NullPointerException triggered if client attempts to upload a
file as a child of some existing file.
### Changelog 2.8.24..2.8.25
<!-- git log 2.8.24..2.8.25 -no-merges -format='[%h](https://github.com/dcache/dcache/commit/%H)%n: %s%n' -->
[80d7ff0](https://github.com/dcache/dcache/commit/80d7ff00aed0718419ddf0b71ef18b979f8a9aa4)
: [maven-release-plugin] prepare release 2.8.25
[81c0b88](https://github.com/dcache/dcache/commit/81c0b886f1ef7921bf1702505f3e571a63f40985)
: ftp: fix response if user fails to authenticate to weak FTP door
[bcc51c3](https://github.com/dcache/dcache/commit/bcc51c32e098346560bb0f0eaa7728fa37ad0f48)
: ftp: fix invalid default for ftp.authz.readonly property
[c6ce396](https://github.com/dcache/dcache/commit/c6ce39648811ad9f750ef656f42824893f589702)
: webdav: fix double-slash bug by upgrading to patched milton
[1a3360d](https://github.com/dcache/dcache/commit/1a3360de200ef7e1d28bc91f0a9880eba1e15bcd)
: webdav: fix NullPointerException when PUT as a child of a file
[8c8c2c9](https://github.com/dcache/dcache/commit/8c8c2c99044817d4f8ac00952ef5d22812324ae9)
: [maven-release-plugin] prepare for next development iteration
## Release 2.8.24
### Changes affecting multiple services
Previously releases of dCache claimed to support Java-8; however, this
is not true. For Java-8 support, sites must upgrade to dCache v2.10
or newer.
### httpd
Fix two minor issues when authenticating with the webadmin interface:
"unauthorised access" and being redirected to the home page. The
unauthorised access error can occur when selecting "Login" under the
bird logo (top right corner); this is now fixed. The redirection
problem occurs when selecting a tab that requires administrative
privileges while not logged in; this redirects the browser to the
login page. Previously, after a successful login, the browser was
redirected to the home page. Now the browser is redirected to the
selected tab.
### webdav
A previous bug-fix release fixed how dCache responds when the client
attempts to `DELETE` a non-existent file. Unfortunately, this
triggered a different problem where such activity results in a
stack-trace that starts `java.lang.ClassCastException:
java.lang.String cannot be cast to javax.security.auth.Subject`. This
second problem is now fixed.
### Changelog 2.8.23..2.8.24
<!-- git log 2.8.23..2.8.24 -no-merges -format='[%h](https://github.com/dcache/dcache/commit/%H)%n: %s%n' -->
[d12c8a8](https://github.com/dcache/dcache/commit/d12c8a87003d35c2e4961a6c1cd2554d4562d6fa)
: [maven-release-plugin] prepare release 2.8.24
[547f243](https://github.com/dcache/dcache/commit/547f24335a0f49a6a1ae83a76879d66c68f8333e)
: Disallow Java 8
[aacde44](https://github.com/dcache/dcache/commit/aacde44f2c4b6b4a1d54c9d8f80470161b78ab7a)
: webdav: Alternative to fixing return code of DELETE of absent file
[29fbab9](https://github.com/dcache/dcache/commit/29fbab9940b8d4a68c5447d4fc76d3dcc10e4943)
: (2.8) webadmin: fix login redirect bug
[6ac1b0c](https://github.com/dcache/dcache/commit/6ac1b0c1eb411fd85ceef853dba21d714275445b)
: [maven-release-plugin] prepare for next development iteration
## Release 2.8.23
### info-provider
In previous releases, the info-provider assumed the broker domain is
`dCacheDomain`. This assumption has been removed.
### nfs
Update to nfs4j v0.7.9. Avoid errors when the door is heavily loaded
and the client closes a file. Avoid potential deadlock under the same
circumstances. Add the `pnfs` and `nopnfs` options for controlling
whether PNFS is supported. Fix parsing the exports when a host is
mentioned multiple times. Note that `localhost` must now have an
explicit entry in the exports file.
### pool
A recent release fixed a bug that caused
`pool.mover.ftp.allow-incoming-connections` to be ignored. Fixing
that bug revealed another that caused the property to have the
opposite effect. This is now fixed.
### webdav
Although dCache behaves correctly if the client interrupts a proxied
transfer; however, this is logged as a bug. This is now fixed.
### Changelog 2.8.22..2.8.23
<!-- git log 2.8.22..2.8.23 -no-merges -format='[%h](https://github.com/dcache/dcache/commit/%H)%n: %s%n' -->
[e7c2da3](https://github.com/dcache/dcache/commit/e7c2da3635d4d45797fbb8f8c65803c2a9922305)
: [maven-release-plugin] prepare release 2.8.23
[fddb44a](https://github.com/dcache/dcache/commit/fddb44ab62df381a5aff34b584a8e2bee23c6556)
: webdav: don't log a stack-track when proxy transfer is interrupted
[3ec0541](https://github.com/dcache/dcache/commit/3ec05415ad2541da32ed1f8f27163679488d5d8b)
: info-provider: remove dCacheDomain assumption.
[8d751e9](https://github.com/dcache/dcache/commit/8d751e9ebf49ae90c1c6c5d427c2d6a41270fdb1)
: (2.8) gitignore additions for IntelliJ
[639e52d](https://github.com/dcache/dcache/commit/639e52d8b8121c7ee9789a048127d6e9e127f1b5)
: libs: update to nfs4j-0.7.9
[277f3cf](https://github.com/dcache/dcache/commit/277f3cfa3af72074867c3c40bd676018e9d52918)
: pool: Fix regression causing FTP movers to default to proxy mode
[127a01f](https://github.com/dcache/dcache/commit/127a01fbba6b213912e73c3649378bb2eaecd467)
: [maven-release-plugin] prepare for next development iteration
## Release 2.8.22
### Changes affecting multiple services
Although dCache system configuration property names do not contain
spaces, it is possible to define such properties. Previously, doing
so breaks the `dcache` command. This is now fixed.
If the number of concurrent connections is set to `-1` then the ftp
and dcap doors will leak memory, eventually triggering an
out-of-memory error that will restart the domain. This is now fixed.
### dcap
Fix regression against v2.6 and earlier dCache in how gsidcap doors
are known to SRM and how they are published in BDII/GLUE.
### pool
The `pool.mover.ftp.allow-incoming-connections` property had no
effect. This is now fixed.
### spacemanager
Adjust spacemanager schema migration to be aware of earlier dCache
bugs and to work-around site-local indexes that clash with new indexes
that dCache needs.
### srm
Previously, if the SRM client requests listing a directory, specifies
a non-zero offset and does not limit the response size then dCache
would fail this request with an IllegalArgumentException. This is now
fixed.
### webdav
With the recent upgrade of the Milton library some new behaviour was
introduced. One example is that, under certain circumstances (and to
support certain clients) the Milton library returns a `401` (not
authorised) when attempting to delete a non-existing file.
Unfortunately, this change then broke ATLAS clients. This patch
updates dCache so it returns `404` (not found) under these
circumstances.
Fix the response when a client requests a byte-range beyond the end of
a file. This is necessary for compatibly with ARC clients.
### Changelog 2.8.21 to 2.8.22
<!-- git log 2.8.21..2.8.22 -no-merges -format='[%h](https://github.com/dcache/dcache/commit/%H)%n: %s%n' -->
[1778656](https://github.com/dcache/dcache/commit/1778656743471c4238d15ad2edaa7729a8adfc6c)
: [maven-release-plugin] prepare release 2.8.22
[8d7c305](https://github.com/dcache/dcache/commit/8d7c30539d51642671a75f20c7171ee15baf9fc8)
: webdav: Fix reported content length for partial GETs
[8c80c91](https://github.com/dcache/dcache/commit/8c80c916aa97350e5edea5510e00b8ae9fe6d533)
: webdav: Fix return code on DELETE of absent file
[651a59b](https://github.com/dcache/dcache/commit/651a59b3e85af0e786e34c6c6e042c2aa7ee7b98)
: srm: fix semi-infinite ls range with non-zero offset
[c65a728](https://github.com/dcache/dcache/commit/c65a7289709ee6a37626e76f9c27ca1c046aa987)
: pool: Fix typo that breaks pool.mover.ftp.allow-incoming-connections
[c5983ea](https://github.com/dcache/dcache/commit/c5983eaef22b39c4edaa6ec446d3c7d2ecec9fc1)
: shell: fix shell oracle for configuration keys with a space
[1cdab85](https://github.com/dcache/dcache/commit/1cdab850fef126f87d0ba6297a3780362686aeb1)
: dcap: Fix regression in published protocol family
[4ff3a11](https://github.com/dcache/dcache/commit/4ff3a11a7a50c1c02b6f737e226f2c0fcfef2e27)
: loginmanager: Fix leak caused by absent child limit
[f3917d1](https://github.com/dcache/dcache/commit/f3917d100cbaeeb630de71951521d90f77c7981d)
: spacemanager: Fix null constraints and other schema migration issues
[b1e26a8](https://github.com/dcache/dcache/commit/b1e26a8c7b9d3ee44aef09dfd2ef8d029ad14c3b)
: [maven-release-plugin] prepare for next development iteration
## Release 2.8.21
### nfs
Under heavy load, if the nfs door is restarted, the new door may
receive response messages from requests send by the previous door. In
previous versions of dCache, this situation triggered a stack-trace.
This is now fixed.
### pool
The NFS specification allows the server to specify multiple addresses
when telling the client where to connect; for example, specifying both
an IPv4 and an IPv6 address, or both addresses for multi-homed
machines. This requires the client to choose the appropriate
interface. For Scientific Linux 6, the kernel client will always use
the first supplied address in the list and fail if it cannot access
the pool with that address. With this release, pools will order the
list, using heuristics to select which IPv4 address is "correct" and
list it first.
### poolmanager
With previous dCache versions, the WAAS selection algorithm had a bug
where it could (mistakenly) consider pools full if all pools had very
fresh files. This is fixed with this release.
### webdav
Upgrade to Milton v2.6. This fixes the buffering problem where a
proxied vector read request results in the entire file being written
to a `tmp` directory and not deleted. With this release, requests for
100 kiB or less data result in no data being written to disk; requests
for more than 100 kiB are still written to disk, but only the data
needed to satisfy the request is stored and the file is deleted once
the response has been sent. Some issues persist: data isn't deleted
if there is a failure sending it to the client and the whole file is
requested from the pool.
### Changelog 2.8.20 to 2.8.21
<!-- git log 2.8.20..2.8.21 -no-merges -format='[%h](https://github.com/dcache/dcache/commit/%H)%n: %s%n' -->
[adfe43f](https://github.com/dcache/dcache/commit/adfe43f8db2fd022d5d277f0ac012f93cf80b535)
: [maven-release-plugin] prepare release 2.8.21
[267e203](https://github.com/dcache/dcache/commit/267e20388c41c0df6b58fc374b4878b45bb9f019)
: poolmanager: Fix full pool detection for WASS
[2bad558](https://github.com/dcache/dcache/commit/2bad5586d7c435effd3cb98ccc4e3fc5c87a7857)
: Upgrade to Milton 2.6
[dfd91c6](https://github.com/dcache/dcache/commit/dfd91c68ccd6525a280627118f4ede26eece19ea)
: pool: reorder ip addresses returned to NFS client
[8e9bfbf](https://github.com/dcache/dcache/commit/8e9bfbfbc2b0e9c7ec4fd239e54036363c8ff490)
: nfs: fix NPE on door reboot
[8c3b6b3](https://github.com/dcache/dcache/commit/8c3b6b3cbe35d216f164df3122990941457c28e6)
: [maven-release-plugin] prepare for next development iteration
## Release 2.8.20
### Changes affecting multiple services
Restarting a domain within an active dCache instance can lead to a
domain receiving messages for a cell as it is starting. Strict
control is require to avoid the cell attempting to process messages
before it is ready. This release fixes one place where this control
was missed, which could lead to a `NullPointerException`. While this
problem can affect any core dCache service, it was noticed with the
spacemanager service.
### httpd
dCache versions including and after 2.11.0, 2.10.9, 2.9.12, 2.8.16,
2.7.21 and 2.6.36 required sites to delete existing RRD files when
upgrading; i.e., run the command `rm -f /var/lib/dcache/plots/*.rrd`
when the domain hosting the `httpd` service is stopped. This release
reverts that change, but requires sites that have already upgraded to
repeat the `rm` command. Sites upgrading from an earlier dCache
version do not need to delete anything.
### nfs
Protect against a `NullPointerException` if the client attempts to
read the contents of a file's level where that level exists in the
database but contains a Nil value. This does not happen under normal
circumstances.
### pool
The Berkeley DB, which may be used to store file metadata on the pool,
does not like being interrupted. The pool tries hard to avoid
interrupting reading or writing; this release fixes one place that
slipped through.
### Changelog 2.8.19 to 2.8.20
<!-- git log 2.8.19..2.8.20 -no-merges -format='[%h](https://github.com/dcache/dcache/commit/%H)%n: %s%n' -->
[8b245bc](https://github.com/dcache/dcache/commit/8b245bcb39c2518c124a320d4552a17c021fada5)
: [maven-release-plugin] prepare release 2.8.20
[bb202c0](https://github.com/dcache/dcache/commit/bb202c0322cd172c0d5742005caba17cf5a1dc7f)
: imera: protect against NPE in FsSqlDriver#read
[4da50fc](https://github.com/dcache/dcache/commit/4da50fca73c978b0da1db29203649ebee19c35f6)
: Fix NPE in cell initialization
[92db6bd](https://github.com/dcache/dcache/commit/92db6bda689442bb2dd42c183f8fd7dd4097a1b4)
: pool: Avoid interrupting Berkeley DB in migration module server
[ac7a972](https://github.com/dcache/dcache/commit/ac7a972cd9e303f39397945c747479a8056b4bf8)
: dcache-webadmin: revert rrd data source names
[da00de9](https://github.com/dcache/dcache/commit/da00de9c8eeff09fc79655b991b482dee1136dbf)
: [maven-release-plugin] prepare for next development iteration
## Release 2.8.19
### httpd
In previous versions of dCache, the webadmin war file is automatically
unpacked. This has been problematic as a dCache upgrade did not
always trigger updating the unpacked webadmin, resulting in dCache
running the older webadmin. With this release, dCache no longer
unpacks the war file; the `webadminWarunpackdir` and
`httpd.container.webapps.tmp-dir` properties are now obsolete.
### Changelog from 2.8.18 to 2.8.19
<!-- git log 2.8.18..2.8.19 -no-merges -format='[%h](https://github.com/dcache/dcache/commit/%H)%n: %s%n' -->
[9143af5](https://github.com/dcache/dcache/commit/9143af5c3337fdc318b543d9a58ab1dfb6e394cd)
: [maven-release-plugin] prepare release 2.8.19
[e6255d2](https://github.com/dcache/dcache/commit/e6255d295fe0a37715b80ea743495a62a2717cda)
: [maven-release-plugin] prepare for next development iteration
[79b8708](https://github.com/dcache/dcache/commit/79b8708ea7f5f3e9903bb6be49f94e42b7aff47f)
: (2.8) dcache-webadmin: change Jetty setting so .war is not unpacked
## Release 2.8.18
### Changes affecting multiple services
A bug was discovered that resulted in the nlink count becoming
negative. While wrong, this had a knock-on effect that prevented
pnfsmanager and nfs services from listing the affected directory.
With this release, directory listing are robust against such problems.
### alarms
Fix alarm definition that triggers when the pool discovers a file with
the wrong checksum. Previously it mistakenly triggered if an upload
was incomplete.
### nfs
Update nfs4j to v0.7.8. This brings some small performance benefits
when listing a directory and for reading data through NFS v3.
Fix bug where, when a client read activity is proxied, the
corresponding dcap mover wasn't removed if client didn't wait for the
queued mover to start. Previously, such movers would accumulate on
the pool.
### pnfsmanager
Prevent attempts to remove the `.` and `..` directories.
### webadmin
Display the command's output in the cell admin page to use a monospace
font.
Remove a javascript error due to missing clojure dependency.
### Changelog from 2.8.17 to 2.8.18
<!-- git log 2.8.17..2.8.18 -no-merges -format='[%h](https://github.com/dcache/dcache/commit/%H)%n: %s%n' -->
[1398703](https://github.com/dcache/dcache/commit/13987030aa80742b5afe8bb45aff652bf5d31a87)
: [maven-release-plugin] prepare release 2.8.18
[c93431e](https://github.com/dcache/dcache/commit/c93431ee42d74eb5d94b6b9f38f7df9df4bcbb5a)
: alarms: fix regex for checksum alarm
[19282f9](https://github.com/dcache/dcache/commit/19282f97bc5c2b9058a2b312045fccc763f62901)
: webadmin: remove redundant head element in alarms panel html
[c5de8f4](https://github.com/dcache/dcache/commit/c5de8f4a73e3250693cc2dd7afae36b9de9dfdac)
: dcache-webadmin: change output field of cell admin page to monospace font
[687aa99](https://github.com/dcache/dcache/commit/687aa99020f8b81d92aa751cfdb423955eca5ed5)
: (2.11) dcache-webadmin: eliminate clojure dependency
[0751511](https://github.com/dcache/dcache/commit/0751511410d05d6e067a3a69331beddb34a3c5bb)
: nfs-proxy: kill mover if we get a timeout on redirect
[90fe062](https://github.com/dcache/dcache/commit/90fe062498379872bacc457245fe031e43c4f4a6)
: libs: update to nfs4j-0.7.8
[e584a4c](https://github.com/dcache/dcache/commit/e584a4c19bac93a886c06d14b17ce7c7f04e48e1)
: chimera: protect list initialization from FS inconsistencies
[d19ce90](https://github.com/dcache/dcache/commit/d19ce90c45a722ebba53ea14b1faebb2a90dc808)
: webadmin: tidy up unavailable page slightly
[12ca4fd](https://github.com/dcache/dcache/commit/12ca4fd9dd705b857d79383a0127ffdf4bcc1d50)
: chimera: prevent attempts to remove '.' and '..'
[16ca7af](https://github.com/dcache/dcache/commit/16ca7affdeaca7f6b833eb8a5ad698cde682d001)
: [maven-release-plugin] prepare for next development iteration
## Release 2.8.17
### Fixes affecting multiple services
Update `dcache check-config` to print an error if site-local
configuration contains scoped properties: one that contain a '/'
character.
### httpd
Fix pool queue plots in webadmin.
### nfs
Performance improvements.
### pnfsmanager
Fix the message reported when moving (or renaming) a file or directory
and certain problems were found: the destination directory isn't a
directory, the source doesn't exist, or overwriting with different
types (e.g., overwriting a directory with a file).
### poolmanager
If a site using WAAS specifies too large a Space Cost Factor then the
algorithm used for write pool selection breaks down, logging
"Unreachable statement." Starting with this release, a warning is
logged indicating the cause of the problem.
### Changelog from 2.8.16 to 2.8.17
<!-- git log 2.8.16..2.8.17 -no-merges -format='[%h](https://github.com/dcache/dcache/commit/%H)%n: %s%n' -->
[6e4fb2a](https://github.com/dcache/dcache/commit/6e4fb2a65ca4f7aa992dab7d8d944a813741ea29)
: [maven-release-plugin] prepare release 2.8.17
[17b6c99](https://github.com/dcache/dcache/commit/17b6c995dc09266680f007126de428ba2f35ce3a)
: chimera: Add messages to JdbcFs#move exceptions
[f4c7a80](https://github.com/dcache/dcache/commit/f4c7a80dba81cb84f2f7966047d61713b738f7ba)
: poolmanager: Warn when spacecostfactor is too big
[575bb58](https://github.com/dcache/dcache/commit/575bb58c753e37ed1224e800d11f3b8fb65e1c15)
: check-config: Produce error when using scoped properties
[ac38688](https://github.com/dcache/dcache/commit/ac38688634b6c525dba7f574725acaf4da289a16)
: (2.8) pool queue plots - fix partial package refactoring and neglected removal of jndi arguments
[5e25480](https://github.com/dcache/dcache/commit/5e254802b2c9306961adf51708e1c7d2c1ba1609)
: pom: update to nfs4j-0.7.7
[f8471dc](https://github.com/dcache/dcache/commit/f8471dcaccb9f08eae52d422ae2f5fee7c072d8a)
: [maven-release-plugin] prepare for next development iteration
## Release 2.8.16
### Fixes affecting multiple services
Running the `eval` admin command so it returns a non-zero return-code
would respond indicating that a bug had been found. This has been
fixed.
An named environment may be executed and can contain a reference to
itself. If this recursion is unchecked, eventually memory is
exhausted and the domain would restart. Now an error is logged and the
domain is not killed.
Previously, some exceptions were logged with the wrong cell context or
without any context. This has been fixed.
### billing
Billing records issued by doors never included the file's size. This
is now fixed for all doors except NFS.
### gplazma
The xacml plugin now supports the gums server returning GID values.
### pool
Fix internal copying of files (triggered by the SRM `copy` command) so
they respect the LAN port range.
Fix migration module's random pool selection so that it does not
select pools that are full.
Fix NullPointerException triggered when using migration module's
proportional pool selection and all pools are full.
The `rep ls` command can calculate per-storage-class statistics. This
release fixes a problem where files without a storage-info would
trigger an IllegalStateException when calculating these statistics.
Fix sweeping of files without a storage-info. Previously an
IllegalStateException was thrown; this could be triggered by the admin
interface or by the sweeper.
Fix a problem where the pool would register free space before actually
deleting the file from the file system; for a brief moment, the pool
would appear to have more free space that is actually available.
Periodically, pools check that dCache's internal accounting of total
and free capacity does not exceed the OS supplied values for the
partition (i.e., the output from the `df` command); if they do then
the dCache internal accounting is adjusted to match. The dCache.org
team have observed that, after a file is deleted, some seconds may
elapse before the corresponding extra free capacity is reported by the
OS. To protect pools from this effect, the total and free capacity
check is suppressed for 60 seconds after a file was deleted.
### spacemanager
If a transient deadlock resolution error occurs, unconditionally retry
the operation and do not log it. Such errors are part of RDBMS design
when resolving concurrent updates.
### srm
Fix the srm service's admin interface `ls` command so that listed jobs
can optionally include only those that have failed, have completed or
were cancelled.
### webadmin
Webadmin periodically creates billing graphs by querying the billing
service for the information it needs. Previously, if this query
failed (e.g., the billing service was restarted or failed to start
first) then no further billing graphs are generated and a domain
restart is needed. As a result of this work, the properties
`poolqplots.refresh-interval`, `poolqplots.refresh-interval-unit`,
`httpd.plots.pool-queue.refresh` and
`httpd.plots.pool-queue.refresh.unit` are no longer supported. The
`httpd.plots.pool-queue.min-time-step` and
`httpd.plots.pool-queue.min-time-step.unit` properties now also cover
this configuration.
### Changelog from 2.8.15 to 2.8.16
<!-- git log 2.8.15..2.8.16 -no-merges -format='[%h](https://github.com/dcache/dcache/commit/%H)%n: %s%n' -->
[3d8c195](https://github.com/dcache/dcache/commit/3d8c1959642fad939868b61b8d22fa3769cbd784)
: [maven-release-plugin] prepare release 2.8.16
[034fae2](https://github.com/dcache/dcache/commit/034fae263cbf65baf4d16b725180c9ed46da9a98)
: gplazma-xacml: Add handling of GID returned by GUMS in gPlazma2 XACML plugin
[4296a50](https://github.com/dcache/dcache/commit/4296a507964489b30038f0b27b20821b615c3be9)
: chimera: fix unit tests
[87d63e1](https://github.com/dcache/dcache/commit/87d63e1e1ba270eb296d552c4c3850ecbed2f464)
: pool: Fix pool size health check in case of asynchronous release of space
[99d67fd](https://github.com/dcache/dcache/commit/99d67fd01345ae85fa3ddbb7dc8510dd99253fde)
: spacemanager: Suppress transient deadlock resolution errors
[e71060a](https://github.com/dcache/dcache/commit/e71060ae2d1aaca05b63d6bd60ab329915791c4f)
: pool: Fix race leading to false positices in pool size health checks
[9f2575e](https://github.com/dcache/dcache/commit/9f2575ee1084e584474c6596ad30ea91381ba81b)
: pool: Fix ISE in CacheEntryImpl#toString
[d99e691](https://github.com/dcache/dcache/commit/d99e691b8da3b4ce5db24fc3a454b479bb2bf02d)
: pool: Fix ISE in 'rep ls'
[a6d1a8c](https://github.com/dcache/dcache/commit/a6d1a8cbe3bf635811a0a939ba59da7233221988)
: Made PoolQueuePlotData enum compatible with java 8.
[5f575c7](https://github.com/dcache/dcache/commit/5f575c733fb11d2cd3f919da347a30b39f6d3a08)
: (2.8) webadmin: fix exit login in billing refresh loop
[eb1d50a](https://github.com/dcache/dcache/commit/eb1d50aa6f7e0e3a39268b892fa4b81a4d38aa3a)
: Marked refresh properties obsolete.
[477cb5a](https://github.com/dcache/dcache/commit/477cb5a6bd958befc29866e5d4c66c5431110733)
: cell: Log exceptions within the correct cell context
[a2815df](https://github.com/dcache/dcache/commit/a2815df191fd19e4f30a993b357d086afc1fc13b)
: pool: Fix pool selection bugs in migration module
[a197381](https://github.com/dcache/dcache/commit/a1973815576cc02ad7dc9e5e33efb0b90af2045d)
: billing: Add file size to request records
[eecfb6c](https://github.com/dcache/dcache/commit/eecfb6cd00f9f0ba7ee68569d0a50e2334614632)
: (2.8) webadmin: minor improvements to rrd4j-based pool-queue plots
[4bf9cc7](https://github.com/dcache/dcache/commit/4bf9cc766e16c950d7c19d1acdebffc59cd8f563)
: Backport PortRange extensions
[2326ac3](https://github.com/dcache/dcache/commit/2326ac3c9541666753db8fa8c218bc69c91b8af4)
: pool: Respect LAN port range for internal srmcp transfers
[92c2f28](https://github.com/dcache/dcache/commit/92c2f28c04fb9a33f76fd537246f99e52640bcc1)
: srm: Fix listing of failed, done and cancelled jobs
[a4d1212](https://github.com/dcache/dcache/commit/a4d1212c85be9198cde5b83b25dbf2cfd9baa91d)
: cell: Prevent interpreter stack overflow from killing the domain
[20efd5e](https://github.com/dcache/dcache/commit/20efd5e4afcd7f1ba1cfcecbf8ff9109cf8c495f)
: cell: Declassify eval failure as a bug
[96574ce](https://github.com/dcache/dcache/commit/96574ce18300d7e3f697cd34f6ae4b1ea0853dbc)
: [maven-release-plugin] prepare for next development iteration
## Release 2.8.15
### Fixes affecting multiple services
The nfs and srm both cache replies from gPlazma to increase the speed
of authenticating and identifying the user. Previously transient
errors when communicating with gPlazma were also cached, delaying the