Alluxio 2.9.2 Release

We are excited to announce the release of Alluxio 2.9.2! This is an edge release for Alluxio open source on top of Alluxio 2.9.1, with various bug fixes, documentation, and improvements.

HIGHLIGHTS

Default TTL behavior change

The default TTL behavior previously was to delete the data from both Alluxio and the underlying storage. This is now changed to only deleting the data from Alluxio, leaving the persisted data untouched. See more details in the corresponding github issue and PR.

Prevent recursive metadata sync from getStatus call on a directory

If a metadata sync is triggered by a getStatus call for inode type NONE, the previous behavior was to trigger metadata sync recursively through the directory’s child nodes. The new behavior does not recursively perform metadata sync, only syncing the target of the getStatus call. If the previous behavior is desired, set the property key alluxio.master.metadata.sync.get.directory.status.skip.loading.children to false.

IMPROVEMENTS AND BUGFIXES SINCE 2.9.1

Notable configuration property changes

Property keyOld 2.9.1 valueNew 2.9.2 valuePR
alluxio.underfs.eventual.consistency.retry.max.num200#16887
alluxio.user.file.create.ttl.actionDELETEDELETE_ALLUXIO#16823
alluxio.master.metastore.rocks.checkpoint.compression.level-11#16801
alluxio.job.request.batch.size201#16802

Benchmark

  • Fix the client stressbench concurrency problem (#16934) (cbff62)
  • Add local read benchmarks for PagedBlockStore (#16804) (f9cb6d)

Build

  • Fix build error when revision is shorter than 8 chars (#16888) (c4b9ec)
  • Add maven build dockerfile with jdk17 (#16885) (aea58c)
  • Support Maven reproducible builds (#16881) (6400f4)
  • Replace ManagementFactoryHelper with ManagementFactory for java11 (#16874) (782b38)

Client

  • Remove the restriction of UFS for local cache (#16819) (02bc22)
  • Add CapacityBasedDeterministicHashPolicy (#16237) (c14861)
  • Implement unbuffer interface for HdfsFileInputStream (#16017) (903269)
  • Change default TTL action from DELETE to DELETE_ALLUXIO (#16823) (7aa8b6)
  • Reduce useless async cache request when read from remote worker (#16313) (99923c)
  • Add cache TTL enforcement (#16843) (6ca7d1)
  • Add the two-choice random cache eviction policy (#16828) (530e72)

Configuration

  • Support dynamic update HeartbeatThread tick interval (#16702) (7f6baa)
  • Fix updated config not notifying config registry (#16764) (407cf1)

Docker and K8s

Job Service

Log

Master

  • Improve LS by allowing to omit UFS and mount info (#16893) (3f8c79)
  • Fix metadata sync behavior when descendant type is NONE (#16935) (8ef0a4)
  • Make standby master keep MountTable up-to-date (#16908) (a5d57e)
  • Make workers register to all masters (#16849) (ebeac4)
  • Add allowOnStandbyMasters option for version grpc endpoint (#16890) (da6abf)
  • Fix file fingerprint to use atomic get content hash of uploaded file (#16597) (00da77)
  • Make version service return unavailable on standby masters (#16854) (7399c3)
  • Support rm directory and reset DirectChildrenLoadedState (#15647) (778f9e)
  • Support gRPC on standby masters (#16839) (325f36)
  • Add disable are descendants loaded property (#16813) (5a7cfe)
  • Use async journals for block id journal entries in metadata sync (#16529) (9f91f9)

Metrics

  • Add metrics sink to job master (#16899) (73f3ce)
  • Fix Worker.ActiveClients is negative when load from ufs (#16784) (60d515)
  • Add metrics for in memory data structures (#16818) (ee6c23)
  • Fix metric worker.cacheBlockSize increases when cache already existed (#16791) (945b10)

S3 API

CLI

UFS

  • Update retry policy for object stores (#16887) (47320b)
  • Merge delete requests to Optimize move directory perf on objectstore (#16527) (7ab257)
  • Refactor s3 low level output stream and support OSS and OBS (#16122) (0b4796)

Web UI

  • Display more information in WebUI Masters (#16636) (8502fb)
  • Support display master system status from master ui (#16779) (fb9e88)

Worker

  • Support remove blocks on worker for pagestore when free/delete file (#16895) (669f80)
  • Fix free worker command bugs (#16458) (ff0a6d)
  • Add local read benchmarks for PagedBlockStore (#16804) (f9cb6d)
  • Merge local cache invalidation (#16841) (506a0f)
  • Split BlockStoreEventListener.onCommitBlock() (#16777) (6fc070)

ACKNOWLEDGEMENTS

We want to thank the community for their valuable contributions to the Alluxio 2.9.2 release. Especially, we would like to thank:

Deepak Shivamurthy (deepak-shivamurthy), Haoning Sun (Haoning-Sun), Ce Zhang (JySongWithZhangCe), Kaijie Chen (kaijchen), Nandeeshvar Porko Pandiyan (nand-porko), Vimal (vimalKeshu), Xinran Dong (007DXR), Yaolong Liu (codings-dan), bingzheng, (bzheng888), fanyang (fffanyang), humengyu (humengyu2012), linda (wenfang6), Baolong Mao (maobaolong), Lei Qian (qian0817),Xinyu Deng (voddle), Yangchen Ye (YangchenYe323), yiichan (YichuanSun), Tianbao Ding (flaming-archer)

Enjoy the new release and look forward to hearing your feedback on our community slack channel.