diff --git a/databases/cassandra4/Makefile b/databases/cassandra4/Makefile index 16a0cc54cd93..f2d96da853c0 100644 --- a/databases/cassandra4/Makefile +++ b/databases/cassandra4/Makefile @@ -1,198 +1,199 @@ PORTNAME= cassandra -DISTVERSION= 4.0.8 -PORTREVISION= 3 +DISTVERSION= 4.1.11 CATEGORIES= databases java MASTER_SITES= https://archive.apache.org/dist/${PORTNAME}/${DISTVERSION}/:apache \ - https://repo1.maven.org/maven2/com/github/luben/zstd-jni/1.5.0-4/:maven + https://repo1.maven.org/maven2/com/github/luben/zstd-jni/1.5.6-7/:maven PKGNAMESUFFIX= 4 DISTNAME= apache-${PORTNAME}-${DISTVERSION}-src DISTFILES= ${DISTNAME}.tar.gz:apache \ ${ZSTD_DISTFILE} \ ${MAVEN_CACHE_FILE}:prefetch DIST_SUBDIR= ${PORTNAME} EXTRACT_ONLY= ${DISTNAME}.tar.gz \ ${MAVEN_CACHE_FILE} MAINTAINER= language.devel@gmail.com COMMENT= Highly scalable distributed database WWW= https://cassandra.apache.org/ LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE.txt FETCH_DEPENDS= ${JAVA}:${JAVA_PORT} \ ant:devel/apache-ant RUN_DEPENDS= snappyjava>=0:archivers/snappy-java \ netty>0:java/netty USES= cpe java:ant python shebangfix USE_RC_SUBR= cassandra SHEBANG_FILES= bin/cqlsh.py pylib/setup.py TEST_TARGET= test CPE_VENDOR= apache -CONFLICTS= cassandra3 +CONFLICTS= cassandra[35] JAVA_VERSION= 8 11 JAVA_VENDOR= openjdk FETCH_ENV+= JAVA_HOME=${JAVA_HOME} SUB_LIST= JAVA_HOME=${JAVA_HOME} USERS= cassandra GROUPS= cassandra DATADIR= ${JAVASHAREDIR}/${PORTNAME} BUILD_DIST_DIR= ${WRKSRC}/build/dist REPO_DIR= ${WRKDIR}/repository CONFIG_FILES= cassandra-env.sh \ cassandra-jaas.config \ cassandra-rackdc.properties \ - cassandra-topology.properties \ cassandra.yaml \ commitlog_archiving.properties \ hotspot_compiler \ - logback-tools.xml \ - logback.xml \ jvm8-clients.options \ jvm8-server.options \ jvm11-clients.options \ jvm11-server.options \ jvm-clients.options \ - jvm-server.options + jvm-server.options \ + logback-tools.xml \ + logback.xml SCRIPT_FILES= cassandra \ nodetool \ sstableloader \ sstablescrub \ sstableupgrade \ sstableutil \ sstableverify ZSTDJNI_VERSION= ${MASTER_SITES:M*\:maven:H:T} PLIST_SUB= DISTVERSION=${DISTVERSION} ZSTDJNI_VERSION=${ZSTDJNI_VERSION} OPTIONS_DEFINE= SIGAR DOCS OPTIONS_DEFAULT= SIGAR OPTIONS_SUB= yes SIGAR_DESC= Use SIGAR to collect system information SIGAR_RUN_DEPENDS= java-sigar>=1.6.4:java/sigar DOCS_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sphinx>=0,1:textproc/py-sphinx@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}sphinx_rtd_theme>0:textproc/py-sphinx_rtd_theme@${PY_FLAVOR} PORTDOCS= * MAVEN_CACHE_FILE= apache-${PORTNAME}-${DISTVERSION}-repo.tar.xz -.if !exists(${DISTDIR}/${DIST_SUBDIR}/${MAVEN_CACHE_FILE}) -pre-fetch: - ${MKDIR} ${DISTDIR}/${DIST_SUBDIR} - ${MKDIR} ${WRKSRC}/.build - ${MKDIR} ${WRKSRC}/src/java - ${CP} ${FILESDIR}/maven/build.* ${WRKSRC} - ${CP} ${FILESDIR}/maven/build-* ${WRKSRC}/.build - cd ${WRKSRC} && ${FETCH_ENV} ${ANT} -Dmaven.repo.local=${REPO_DIR} -Dlocal.repository=${REPO_DIR} ${USEJDK11} resolver-dist-lib - cd ${REPO_DIR} && ${FIND} . -type f -name "*.repositories" -a -exec ${SED} -i '' -e '2s,.*,Mon Aug 08 20:40:04 CEST 2022,' {} + - cd ${WRKDIR} && ${MTREE_CMD} -cbnSp repository | ${MTREE_CMD} -C | ${SED} \ - -e 's:time=[0-9.]*:time=0.000000000:' \ - -e 's:\([gu]id\)=[0-9]*:\1=0:g' \ - -e 's:flags=.*:flags=none:' \ - -e 's:^\.:./repository:' \ - > maven-offline-cache.mtree - cd ${WRKDIR} && ${TAR} cJf ${DISTDIR}/${DIST_SUBDIR}/${MAVEN_CACHE_FILE} \ - @maven-offline-cache.mtree - ${SHA256} ${WRKDIR}/maven-offline-cache.mtree ${DISTDIR}/${DIST_SUBDIR}/${MAVEN_CACHE_FILE} -.endif +post-patch: + @${REINPLACE_CMD} -e 's|for interpreter in |for interpreter in ${PYTHON_CMD} |' ${WRKSRC}/bin/cqlsh + +post-patch-DOCS-on: + @${REINPLACE_CMD} -e 's|python3|${PYTHON_CMD}|' ${WRKSRC}/doc/Makefile do-build: @${DO_NADA} # Do nothing: Prevent USE_ANT from running a default build target. do-build-DOCS-on: cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} CASSANDRA_LOG_DIR=${WRKDIR}/gen-doc-log ${ANT} -Dmaven.repo.local=${REPO_DIR} -Dlocal.repository=${REPO_DIR} ${USEJDK11} -Dpycmd=${PYTHON_CMD} -Dpyver=${PYTHON_VER} freebsd-stage-doc do-build-DOCS-off: cd ${WRKSRC} && ${MAKE_ENV} ${ANT} -Dmaven.repo.local=${REPO_DIR} -Dlocal.repository=${REPO_DIR} ${USEJDK11} freebsd-stage post-build: .for f in ${SCRIPT_FILES} @${REINPLACE_CMD} -e 's|/usr/share/cassandra|${DATADIR}/bin|' ${BUILD_DIST_DIR}/bin/${f} .endfor @${REINPLACE_CMD} -e 's|`dirname "$$0"`/..|${DATADIR}|' ${BUILD_DIST_DIR}/bin/cassandra.in.sh @${REINPLACE_CMD} -e 's|$$CASSANDRA_HOME/lib/sigar-bin|${JAVAJARDIR}|' ${BUILD_DIST_DIR}/bin/cassandra.in.sh @${REINPLACE_CMD} -e 's|$$CASSANDRA_HOME/lib/sigar-bin|${JAVAJARDIR}|' ${BUILD_DIST_DIR}/conf/cassandra-env.sh @${REINPLACE_CMD} -e 's|$$CASSANDRA_HOME/conf|${ETCDIR}|' ${BUILD_DIST_DIR}/bin/cassandra.in.sh .for f in ${CONFIG_FILES} @${MV} ${BUILD_DIST_DIR}/conf/${f} ${BUILD_DIST_DIR}/conf/${f}.sample .endfor + @${MV} ${BUILD_DIST_DIR}/conf/cassandra-topology.properties.example ${BUILD_DIST_DIR}/conf/cassandra-topology.properties.sample + @${MV} ${BUILD_DIST_DIR}/conf/metrics-reporter-config-sample.yaml ${BUILD_DIST_DIR}/conf/metrics-reporter-config.yaml.sample @${RM} ${BUILD_DIST_DIR}/lib/licenses/sigar* @${RMDIR} ${BUILD_DIST_DIR}/lib/sigar-bin @${RM} ${BUILD_DIST_DIR}/lib/zstd-jni* @${RM} ${BUILD_DIST_DIR}/lib/licenses/zstd-jni* do-install: ${MKDIR} ${STAGEDIR}${DATADIR} .for f in CHANGES LICENSE NEWS NOTICE cd ${BUILD_DIST_DIR} && ${INSTALL_DATA} ${f}.txt ${STAGEDIR}${DATADIR}/ .endfor .for d in lib pylib tools cd ${BUILD_DIST_DIR} && ${COPYTREE_SHARE} ${d} ${STAGEDIR}${DATADIR}/ "! -path '*/bin/*'" .endfor ${MKDIR} ${STAGEDIR}${ETCDIR} cd ${BUILD_DIST_DIR}/conf && ${COPYTREE_SHARE} . ${STAGEDIR}${ETCDIR}/ cd ${BUILD_DIST_DIR} && ${COPYTREE_BIN} bin ${STAGEDIR}${DATADIR} cd ${BUILD_DIST_DIR} && ${INSTALL_DATA} bin/cassandra.in.sh ${STAGEDIR}${DATADIR}/bin/ cd ${BUILD_DIST_DIR} && ${COPYTREE_BIN} tools/bin ${STAGEDIR}${DATADIR}/ cd ${BUILD_DIST_DIR} && ${INSTALL_DATA} tools/bin/cassandra.in.sh ${STAGEDIR}${DATADIR}/tools/bin/ cd ${BUILD_DIST_DIR} && ${INSTALL_DATA} tools/lib/fqltool.jar ${STAGEDIR}${DATADIR}/tools/lib/ cd ${BUILD_DIST_DIR} && ${INSTALL_DATA} tools/lib/stress.jar ${STAGEDIR}${DATADIR}/tools/lib/ .for f in ${SCRIPT_FILES} ${RLN} ${STAGEDIR}${DATADIR}/bin/${f} ${STAGEDIR}${PREFIX}/bin/${f} .endfor ${RLN} ${STAGEDIR}${DATADIR}/bin/cqlsh ${STAGEDIR}${PREFIX}/bin/cqlsh ${LN} -s ${JAVAJARDIR}/snappy-java.jar ${STAGEDIR}${DATADIR}/lib/snappy-java.jar do-test: @cd ${WRKSRC} && ${ANT} -Dmaven.repo.local=${REPO_DIR} -Dlocal.repository=${REPO_DIR} ${USEJDK11} -Dstagedlib=${STAGEDIR}${DATADIR}/lib test .include +pre-fetch: +.if !exists(${DISTDIR}/${DIST_SUBDIR}/${MAVEN_CACHE_FILE}) + ${MKDIR} ${DISTDIR}/${DIST_SUBDIR} + ${MKDIR} ${WRKSRC}/.build + ${MKDIR} ${WRKSRC}/src/java + ${CP} ${FILESDIR}/maven/build.* ${WRKSRC} + ${CP} ${FILESDIR}/maven/build-* ${WRKSRC}/.build + cd ${WRKSRC} && ${FETCH_ENV} ${ANT} -Dmaven.repo.local=${REPO_DIR} -Dlocal.repository=${REPO_DIR} ${USEJDK11} resolver-dist-lib + cd ${REPO_DIR} && ${FIND} . -type f -name "*.repositories" -a -exec ${SED} -i '' -e '2s,.*,Mon Aug 08 20:40:04 CEST 2022,' {} + + cd ${WRKDIR} && ${MTREE_CMD} -cbnSp repository | ${MTREE_CMD} -C | ${SED} \ + -e 's:time=[0-9.]*:time=0.000000000:' \ + -e 's:\([gu]id\)=[0-9]*:\1=0:g' \ + -e 's:flags=.*:flags=none:' \ + -e 's:^\.:./repository:' \ + > maven-offline-cache.mtree + cd ${WRKDIR} && ${TAR} cJf ${DISTDIR}/${DIST_SUBDIR}/${MAVEN_CACHE_FILE} \ + @maven-offline-cache.mtree + ${SHA256} ${WRKDIR}/maven-offline-cache.mtree ${DISTDIR}/${DIST_SUBDIR}/${MAVEN_CACHE_FILE} +.endif + .if ${JAVA_PORT_VERSION} == 11 USEJDK11= -Duse.jdk11=true -Drat.skip=true .endif .if ${ARCH} == amd64 PLIST_SUB+= AMD64ONLY="" -PLIST_SUB+= I386ONLY="@comment " -.elif ${ARCH} == i386 -PLIST_SUB+= AMD64ONLY="@comment " -PLIST_SUB+= I386ONLY="" .else PLIST_SUB+= AMD64ONLY="@comment " -PLIST_SUB+= I386ONLY="@comment " .endif -.if ${ARCH} == amd64 || ${ARCH} == i386 +.if ${ARCH} == amd64 ZSTD_DISTFILE= zstd-jni-${MASTER_SITES:M*\:maven:H:T}-freebsd_${ARCH}.jar:maven .else ZSTD_DISTFILE= .endif post-install: ${LN} -s ${JAVAJARDIR}/netty.jar ${STAGEDIR}${DATADIR}/lib/netty.jar -.if ${ARCH} == amd64 || ${ARCH} == i386 +.if ${ARCH} == amd64 ${CP} ${DISTDIR}/${DIST_SUBDIR}/zstd-jni-${ZSTDJNI_VERSION}-freebsd_${ARCH}.jar ${STAGEDIR}${DATADIR}/lib/ .endif post-install-DOCS-on: ${MKDIR} ${STAGEDIR}${DOCSDIR} .for d in doc javadoc cd ${BUILD_DIST_DIR} && ${COPYTREE_SHARE} ${d} ${STAGEDIR}${DOCSDIR}/ .endfor post-install-SIGAR-on: ${LN} -s ${JAVAJARDIR}/sigar.jar ${STAGEDIR}${DATADIR}/lib/sigar.jar .include diff --git a/databases/cassandra4/distinfo b/databases/cassandra4/distinfo index 976d31650bd9..487cd6bcbaa7 100644 --- a/databases/cassandra4/distinfo +++ b/databases/cassandra4/distinfo @@ -1,9 +1,7 @@ -TIMESTAMP = 1679924890 -SHA256 (cassandra/apache-cassandra-4.0.8-src.tar.gz) = 98da97d7fe850a0a24eb2aef212e982f73205cbd63955d2915b4ad02e28dae9c -SIZE (cassandra/apache-cassandra-4.0.8-src.tar.gz) = 12953548 -SHA256 (cassandra/zstd-jni-1.5.0-4-freebsd_amd64.jar) = b653460b6ff374db2c01f39a7b7cdb44008c9efd55dc96ae5f869abe9f58d180 -SIZE (cassandra/zstd-jni-1.5.0-4-freebsd_amd64.jar) = 670993 -SHA256 (cassandra/zstd-jni-1.5.0-4-freebsd_i386.jar) = 1bcb75c5837e42d10ec0193ba9df099874792f0829b0ce8dd3412303c6454595 -SIZE (cassandra/zstd-jni-1.5.0-4-freebsd_i386.jar) = 604557 -SHA256 (cassandra/apache-cassandra-4.0.8-repo.tar.xz) = 807a108e3639f247dafa3ce4ebc4744b93668cf463915edf7b654d317d1abaff -SIZE (cassandra/apache-cassandra-4.0.8-repo.tar.xz) = 78148020 +TIMESTAMP = 1776308889 +SHA256 (cassandra/apache-cassandra-4.1.11-src.tar.gz) = 48aabd61a390d8c17d74d6cca244ec14b96f04c6fd0cde7a6b0099d4ccc9b274 +SIZE (cassandra/apache-cassandra-4.1.11-src.tar.gz) = 14938415 +SHA256 (cassandra/zstd-jni-1.5.6-7-freebsd_amd64.jar) = b50239f5e525d62ebc50398ed42a1473c83c3128f34c76755c3b59912123b9ef +SIZE (cassandra/zstd-jni-1.5.6-7-freebsd_amd64.jar) = 492759 +SHA256 (cassandra/apache-cassandra-4.1.11-repo.tar.xz) = 893316f254029601aeff16d265c49680527d891f0bc567db05c36eafaf453426 +SIZE (cassandra/apache-cassandra-4.1.11-repo.tar.xz) = 95341344 diff --git a/databases/cassandra4/files/maven/build-bench.xml b/databases/cassandra4/files/maven/build-bench.xml new file mode 100644 index 000000000000..c030cecb9a7e --- /dev/null +++ b/databases/cassandra4/files/maven/build-bench.xml @@ -0,0 +1,137 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/databases/cassandra4/files/maven/build-cqlsh.xml b/databases/cassandra4/files/maven/build-cqlsh.xml new file mode 100644 index 000000000000..45e0e46a494d --- /dev/null +++ b/databases/cassandra4/files/maven/build-cqlsh.xml @@ -0,0 +1,24 @@ + + + + + version = "${base.version}"${line.separator} + + diff --git a/databases/cassandra4/files/maven/build-owasp.xml b/databases/cassandra4/files/maven/build-owasp.xml index f3174999e8d4..7067c911274a 100644 --- a/databases/cassandra4/files/maven/build-owasp.xml +++ b/databases/cassandra4/files/maven/build-owasp.xml @@ -1,86 +1,119 @@ - - - + + + + + + - - + + - + unless="dependency-check-ant.archive.present"> - Downloading OWASP Dependency checks ... + + + + + + + - + + + + Please set the nvd.api.key property to your NVD API key. It is recommended to put that property into your + ~/.ant/build.properties file. You can get your API key from https://nvd.nist.gov/developers/request-an-api-key + - - + + Since the NVD database is pretty large, you should consider storing it in some persistent location to reuse + it between builds. You can do that by setting the nvd.data.dir property to a directory of your choice, + such as ~/.cache/ant/owasp/database for Linux or ~/Library/Caches/Ant/owasp/database for MacOS. + Putting that property into your ~/.ant/build.properties file is recommended. + - + + + + + - - - + dataDirectory="${nvd.data.dir}" + suppressionFile="${basedir}/.build/dependency-check-suppressions.xml" + nvdDatafeedUrl="${nvdDatafeedUrl}"> + + + + + + + + + + + + + diff --git a/databases/cassandra4/files/maven/build-rat.xml b/databases/cassandra4/files/maven/build-rat.xml index 5a6aa0aa8546..f4a2aab588ad 100644 --- a/databases/cassandra4/files/maven/build-rat.xml +++ b/databases/cassandra4/files/maven/build-rat.xml @@ -1,105 +1,122 @@ - + - - - - - - - - + - + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + + + + + + + + + + + + + + + + + - + diff --git a/databases/cassandra4/files/maven/build-resolver.xml b/databases/cassandra4/files/maven/build-resolver.xml index a159d97acaff..c69ca84c29c2 100644 --- a/databases/cassandra4/files/maven/build-resolver.xml +++ b/databases/cassandra4/files/maven/build-resolver.xml @@ -1,262 +1,271 @@ Downloading Resolver ANT Tasks... + + + - - - - + + - - - diff --git a/databases/cassandra4/files/maven/build.properties.default b/databases/cassandra4/files/maven/build.properties.default index 11da534e32c1..36676f5712d8 100644 --- a/databases/cassandra4/files/maven/build.properties.default +++ b/databases/cassandra4/files/maven/build.properties.default @@ -1,4 +1,23 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# # Maven2 Repository Locations (you can override these in "build.properties" to point to a local proxy, e.g. Nexus) +# artifact.remoteRepository.central: https://repo1.maven.org/maven2 artifact.remoteRepository.apache: https://repo.maven.apache.org/maven2 - +artifact.remoteRepository.apacheSnapshot: https://repository.apache.org/content/repositories/snapshots diff --git a/databases/cassandra4/files/maven/build.xml b/databases/cassandra4/files/maven/build.xml index e9093d367d3b..466b39a1d5aa 100644 --- a/databases/cassandra4/files/maven/build.xml +++ b/databases/cassandra4/files/maven/build.xml @@ -1,2174 +1,2430 @@ + - + - + + + + - - + + + + + + + - + + + - + + - + + + + + + + + + + + + + + + + + + + - + + + - - + + + + + + + + + + + -Djdk.attach.allowAttachSelf=true -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:SurvivorRatio=8 -XX:MaxTenuringThreshold=1 -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSWaitDuration=10000 -XX:+CMSParallelInitialMarkEnabled -XX:+CMSEdenChunksRecordAlways --add-exports java.base/jdk.internal.misc=ALL-UNNAMED --add-exports java.base/jdk.internal.ref=ALL-UNNAMED --add-exports java.base/sun.nio.ch=ALL-UNNAMED --add-exports java.management.rmi/com.sun.jmx.remote.internal.rmi=ALL-UNNAMED --add-exports java.rmi/sun.rmi.registry=ALL-UNNAMED --add-exports java.rmi/sun.rmi.server=ALL-UNNAMED + --add-exports java.rmi/sun.rmi.transport=ALL-UNNAMED + --add-exports java.rmi/sun.rmi.transport.tcp=ALL-UNNAMED --add-exports java.sql/java.sql=ALL-UNNAMED --add-opens java.base/java.lang.module=ALL-UNNAMED --add-opens java.base/java.net=ALL-UNNAMED --add-opens java.base/jdk.internal.loader=ALL-UNNAMED --add-opens java.base/jdk.internal.ref=ALL-UNNAMED --add-opens java.base/jdk.internal.reflect=ALL-UNNAMED --add-opens java.base/jdk.internal.math=ALL-UNNAMED --add-opens java.base/jdk.internal.module=ALL-UNNAMED --add-opens java.base/jdk.internal.util.jar=ALL-UNNAMED --add-opens jdk.management/com.sun.management.internal=ALL-UNNAMED + -XX:-CMSClassUnloadingEnabled -Dio.netty.tryReflectionSetAccessible=true - + - + + maxmemory="1024m" additionalparam="${jdk11-javadoc-exports}"> + - + Building Grammar ${build.src.antlr}/Cql.g ... Downloading Maven ANT Tasks... - - - - + + + - + + - - + + - - - + + + + + + + + - + + + + - + - + - + + + + - - + + - - + + - + - + - + + - + - + + - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - + + - + - + + - + + - + - + - + - + - + - + - - - - + + + + + + + + + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - + - + - - - - - - - - - - - - - - - - - - - - - + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + - - - - + + + + + + - + + - + + + - + - + - + - - + + - + - - + + - + - + - + - + - + - + - + - + - + - + - + - + ant cql-test-some -Dtest.name=ListsTest + ant cql-test-some -Dtest.name=ListsTest -Dtest.methods=testPrecisionTime_getNext_simple + --> + - + - + - + - + - + - - - + + + + - - + + - + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + - + - + asm- - ]]> + Apache Cassandra ${eclipse.project.name} ]]> ${eclipse.project.name} org.eclipse.jdt.core.javabuilder org.eclipse.jdt.core.javanature ]]> + + + + + + + + + + + + + + + + + + + + ${eclipse-libs-list} + ]]> - - - - - - - - - - - - - - + - - + + - - - - - + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + + + diff --git a/databases/cassandra4/files/maven/checkstyle.xml b/databases/cassandra4/files/maven/checkstyle.xml new file mode 100644 index 000000000000..3d2b2919e8b7 --- /dev/null +++ b/databases/cassandra4/files/maven/checkstyle.xml @@ -0,0 +1,115 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/databases/cassandra4/files/maven/checkstyle_suppressions.xml b/databases/cassandra4/files/maven/checkstyle_suppressions.xml new file mode 100644 index 000000000000..ed4d1443f7fc --- /dev/null +++ b/databases/cassandra4/files/maven/checkstyle_suppressions.xml @@ -0,0 +1,25 @@ + + + + + + + + diff --git a/databases/cassandra4/files/maven/checkstyle_test.xml b/databases/cassandra4/files/maven/checkstyle_test.xml new file mode 100644 index 000000000000..5b6e16e8b2b2 --- /dev/null +++ b/databases/cassandra4/files/maven/checkstyle_test.xml @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/databases/cassandra4/files/maven/dependency-check-suppressions.xml b/databases/cassandra4/files/maven/dependency-check-suppressions.xml new file mode 100644 index 000000000000..b7c9921d8cea --- /dev/null +++ b/databases/cassandra4/files/maven/dependency-check-suppressions.xml @@ -0,0 +1,76 @@ + + + + + + ^pkg:maven/org\.yaml/snakeyaml@.*$ + CVE-2022-1471 + CVE-2022-25857 + CVE-2022-38749 + CVE-2022-38750 + CVE-2022-38751 + CVE-2022-38752 + CVE-2022-41854 + + + + ^pkg:maven/com\.google\.guava/guava@.*$ + CVE-2020-8908 + CVE-2023-2976 + + + + ^pkg:maven/io\.netty/netty\-.*@.*$ + CVE-2021-21290 + CVE-2021-21295 + CVE-2021-21409 + CVE-2022-24823 + CVE-2025-24970 + CVE-2025-25193 + CVE-2024-29025 + CVE-2023-34462 + CVE-2021-37136 + CVE-2021-37137 + CVE-2022-41881 + CVE-2021-43797 + CVE-2023-44487 + CVE-2024-47535 + CVE-2025-55163 + CVE-2025-58056 + CVE-2025-58057 + + + + + + ^pkg:maven/ch\.qos\.logback/logback\-core@.*$ + CVE-2023-6378 + CVE-2024-12798 + CVE-2024-12801 + + + ^pkg:maven/ch\.qos\.logback/logback\-classic@.*$ + CVE-2023-6378 + CVE-2024-12798 + CVE-2024-12801 + + diff --git a/databases/cassandra4/files/maven/generate-snyk-file b/databases/cassandra4/files/maven/generate-snyk-file new file mode 100644 index 000000000000..8c556abf62fd --- /dev/null +++ b/databases/cassandra4/files/maven/generate-snyk-file @@ -0,0 +1,75 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +Regenerates the toplevel .snyk file from the dependency-check-suppressions.xml found in this directory. +""" + +import re +import os + + +script_dir = os.path.dirname(os.path.abspath(__file__)) +with open(os.path.join(script_dir, "dependency-check-suppressions.xml"), "r") as f: + xml_lines = [line.strip() for line in f.readlines()] + +snyk_data = {"ignore": {}} + +# Parse XML (keeping track of comments) +last_comment = None +i = 0 +while i < len(xml_lines): + # Detect XML comments (these contain the suppression reason) + if xml_lines[i].startswith(""): + last_comment = xml_lines[i][4:-3].strip() + + # Collect CVE suppressions + if "" in xml_lines[i]: + cve_ids = [] + packages = '' + i += 1 + while i < len(xml_lines): + if xml_lines[i].startswith(""): + last_comment = xml_lines[i][4:-3].strip() + if "" in xml_lines[i] and "" in xml_lines[i]: + cve_ids.append(xml_lines[i].strip().replace("", "").replace("", "").strip()) + if "" in xml_lines[i]: + packages = re.sub(r'|', '', xml_lines[i]).strip() + if "" in xml_lines[i]: + break + i += 1 + reason = (last_comment + " -- " + packages) if last_comment else "Suppressed due to internal review, see project's .build/dependency-check-suppressions.xml" + + # Add suppressions + for cve_id in cve_ids: + snyk_data["ignore"][cve_id] = [{"reason": reason}] + + last_comment = None + else: + i += 1 + +with open(os.path.join(script_dir, "../.snyk"), "w") as snyk_file: + snyk_file.write("# Snyk (https://snyk.io) policy file, provides ignores for known false positives.\n") + snyk_file.write("# This file is autogenerated from .build/dependency-check-suppressions.xml\n") + snyk_file.write("version: v1.25.0\n") + snyk_file.write("ignore:\n") + for cve_id, ignores in sorted(snyk_data["ignore"].items()): + snyk_file.write(" {}:\n".format(cve_id)) + for ignore in ignores: + snyk_file.write(" - reason: {}\n".format(ignore['reason'])) + diff --git a/databases/cassandra4/files/patch-bin_cassandra b/databases/cassandra4/files/patch-bin_cassandra deleted file mode 100644 index 40ea8dcd46d8..000000000000 --- a/databases/cassandra4/files/patch-bin_cassandra +++ /dev/null @@ -1,20 +0,0 @@ ---- bin/cassandra.orig 2020-04-10 22:29:25 UTC -+++ bin/cassandra -@@ -31,7 +31,7 @@ - # JVM_OPTS -- Additional arguments to the JVM for heap size, etc - # JVM_ON_OUT_OF_MEMORY_ERROR_OPT -- The OnOutOfMemoryError JVM option if specified - # CASSANDRA_CONF -- Directory containing Cassandra configuration files. --# CASSANDRA_LOG_DIR -- Directory containing logs(default: $CASSANDRA_HOME/logs). -+# CASSANDRA_LOG_DIR -- Directory containing logs(default: /var/log/cassandra). - # - # As a convenience, a fragment of shell is sourced in order to set one or - # more of these variables. This so-called `include' can be placed in a -@@ -116,7 +116,7 @@ if [ -f "$CASSANDRA_CONF/cassandra-env.sh" ]; then - fi - - if [ -z "$CASSANDRA_LOG_DIR" ]; then -- CASSANDRA_LOG_DIR=$CASSANDRA_HOME/logs -+ CASSANDRA_LOG_DIR=/var/log/cassandra - fi - - # Special-case path variables. diff --git a/databases/cassandra4/files/patch-bin_cqlsh b/databases/cassandra4/files/patch-bin_cqlsh index 8797af062ef5..afaf9f76089a 100644 --- a/databases/cassandra4/files/patch-bin_cqlsh +++ b/databases/cassandra4/files/patch-bin_cqlsh @@ -1,11 +1,11 @@ ---- bin/cqlsh.orig 2022-05-06 16:40:06 UTC +--- bin/cqlsh.orig 2026-03-17 23:20:36 UTC +++ bin/cqlsh -@@ -88,7 +88,7 @@ if [ "$USER_SPECIFIED_PYTHON" != "" ]; then +@@ -90,7 +90,7 @@ else # run a user specified Python interpreter run_if_supported_version "$USER_SPECIFIED_PYTHON" "$@" else -- for interpreter in python3 python python2.7; do -+ for interpreter in python3 python3.9 python3.8 python3.7 python3.6 python python2.7; do +- for interpreter in python3 python; do ++ for interpreter in /usr/local/bin/python3.11 python3 python3.9 python3.8 python3.7 python3.6 python; do run_if_supported_version "$interpreter" "$@" done fi diff --git a/databases/cassandra4/files/patch-build.xml b/databases/cassandra4/files/patch-build.xml index 260d784805f8..16b174272d46 100644 --- a/databases/cassandra4/files/patch-build.xml +++ b/databases/cassandra4/files/patch-build.xml @@ -1,179 +1,179 @@ ---- build.xml.orig 2022-07-12 10:18:13 UTC +--- build.xml.orig 2026-03-17 23:20:36 UTC +++ build.xml -@@ -31,6 +31,7 @@ - +@@ -32,6 +32,7 @@ --> + + - -@@ -81,7 +82,7 @@ + +@@ -93,7 +94,7 @@ --> - + -@@ -288,6 +289,24 @@ +@@ -350,6 +351,24 @@ --> + + + + + + + + + + + + + + + + + + -@@ -297,7 +316,7 @@ - windowtitle="${ant.project.name} API" classpathref="cassandra.classpath" - bottom="Copyright &copy; 2009-2022 The Apache Software Foundation" - useexternalfile="yes" encoding="UTF-8" failonerror="false" -- maxmemory="256m" additionalparam="${jdk11-javadoc-exports}"> -+ maxmemory="512m" additionalparam="${jdk11-javadoc-exports}"> - - - -@@ -438,6 +457,8 @@ +@@ -501,6 +520,8 @@ --> + + -@@ -896,7 +917,7 @@ +@@ -965,7 +986,7 @@ --> + +- ++ + + + +@@ -986,7 +1007,7 @@ --> - -@@ -1147,6 +1168,89 @@ +@@ -1339,6 +1360,89 @@ --> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - -@@ -1397,7 +1501,7 @@ - +@@ -1621,7 +1725,7 @@ --> + - + - -@@ -2089,7 +2193,7 @@ + +@@ -2302,7 +2406,7 @@ --> - + diff --git a/databases/cassandra4/files/patch-conf_cassandra.yaml b/databases/cassandra4/files/patch-conf_cassandra.yaml index ceb30f186b12..319a2b46d3ff 100644 --- a/databases/cassandra4/files/patch-conf_cassandra.yaml +++ b/databases/cassandra4/files/patch-conf_cassandra.yaml @@ -1,71 +1,71 @@ ---- conf/cassandra.yaml.orig 2022-05-06 16:40:06 UTC +--- conf/cassandra.yaml.orig 2026-03-17 23:20:36 UTC +++ conf/cassandra.yaml -@@ -77,7 +77,7 @@ max_hints_delivery_threads: 2 +@@ -79,7 +79,7 @@ max_hints_delivery_threads: 2 # Directory where Cassandra should store hints. # If not set, the default directory is $CASSANDRA_HOME/data/hints. -# hints_directory: /var/lib/cassandra/hints +hints_directory: /var/db/cassandra/hints # How often hints should be flushed from the internal buffers to disk. # Will *not* trigger fsync. -@@ -204,8 +204,8 @@ partitioner: org.apache.cassandra.dht.Murmur3Partition +@@ -309,8 +309,8 @@ partitioner: org.apache.cassandra.dht.Murmur3Partition # directories are specified, Cassandra will spread data evenly across # them by partitioning the token ranges. # If not set, the default directory is $CASSANDRA_HOME/data/data. -# data_file_directories: -# - /var/lib/cassandra/data +data_file_directories: + - /var/db/cassandra/data # Directory were Cassandra should store the data of the local system keyspaces. # By default Cassandra will store the data of the local system keyspaces in the first of the data directories specified -@@ -217,7 +217,7 @@ partitioner: org.apache.cassandra.dht.Murmur3Partition +@@ -322,7 +322,7 @@ partitioner: org.apache.cassandra.dht.Murmur3Partition # commit log. when running on magnetic HDD, this should be a # separate spindle than the data directories. # If not set, the default directory is $CASSANDRA_HOME/data/commitlog. -# commitlog_directory: /var/lib/cassandra/commitlog +commitlog_directory: /var/db/cassandra/commitlog # Enable / disable CDC functionality on a per-node basis. This modifies the logic used # for write path allocation rejection (standard: never reject. cdc: reject Mutation -@@ -228,7 +228,7 @@ cdc_enabled: false +@@ -333,7 +333,7 @@ cdc_enabled: false # segment contains mutations for a CDC-enabled table. This should be placed on a # separate spindle than the data directories. If not set, the default directory is # $CASSANDRA_HOME/data/cdc_raw. -# cdc_raw_directory: /var/lib/cassandra/cdc_raw +cdc_raw_directory: /var/db/cassandra/cdc_raw # Policy for data disk failures: # -@@ -320,20 +320,12 @@ key_cache_save_period: 14400 +@@ -428,20 +428,12 @@ key_cache_save_period: 4h # Row cache implementation class name. Available implementations: # -# org.apache.cassandra.cache.OHCProvider -# Fully off-heap row cache implementation (default). -# # org.apache.cassandra.cache.SerializingCacheProvider # This is the row cache implementation availabile # in previous releases of Cassandra. -# row_cache_class_name: org.apache.cassandra.cache.OHCProvider +# row_cache_class_name: org.apache.cassandra.cache.SerializingCacheProvider # Maximum size of the row cache in memory. -# Please note that OHC cache implementation requires some additional off-heap memory to manage -# the map structures and some in-flight memory during operations before/after cache entries can be -# accounted against the cache capacity. This overhead is usually small compared to the whole capacity. -# Do not specify more memory that the system can afford in the worst usual situation and leave some -# headroom for OS block level cache. Do never allow your system to swap. # # Default value is 0, to disable row caching. - row_cache_size_in_mb: 0 -@@ -380,7 +372,7 @@ counter_cache_save_period: 7200 + # Min unit: MiB +@@ -492,7 +484,7 @@ counter_cache_save_period: 7200s # saved caches # If not set, the default directory is $CASSANDRA_HOME/data/saved_caches. -# saved_caches_directory: /var/lib/cassandra/saved_caches +saved_caches_directory: /var/db/cassandra/saved_caches # Number of seconds the server will wait for each cache (row, key, etc ...) to load while starting - # the Cassandra process. Setting this to a negative value is equivalent to disabling all cache loading on startup + # the Cassandra process. Setting this to zero is equivalent to disabling all cache loading on startup diff --git a/databases/cassandra4/files/patch-src_java_org_apache_cassandra_config_Config.java b/databases/cassandra4/files/patch-src_java_org_apache_cassandra_config_Config.java index 86e8c2a152bf..dc1b6afedc6b 100644 --- a/databases/cassandra4/files/patch-src_java_org_apache_cassandra_config_Config.java +++ b/databases/cassandra4/files/patch-src_java_org_apache_cassandra_config_Config.java @@ -1,11 +1,11 @@ ---- src/java/org/apache/cassandra/config/Config.java.orig 2022-05-06 16:40:06 UTC +--- src/java/org/apache/cassandra/config/Config.java.orig 2026-03-17 23:20:36 UTC +++ src/java/org/apache/cassandra/config/Config.java -@@ -304,7 +304,7 @@ public class Config - public volatile int key_cache_save_period = 14400; - public volatile int key_cache_keys_to_save = Integer.MAX_VALUE; +@@ -445,7 +445,7 @@ public class Config + @Replaces(oldName = "key_cache_save_period", converter = Converters.SECONDS_CUSTOM_DURATION) + public volatile DurationSpec.IntSecondsBound key_cache_save_period = new DurationSpec.IntSecondsBound("4h"); - public String row_cache_class_name = "org.apache.cassandra.cache.OHCProvider"; + public String row_cache_class_name = "org.apache.cassandra.cache.SerializingCacheProvider"; - public long row_cache_size_in_mb = 0; - public volatile int row_cache_save_period = 0; - public volatile int row_cache_keys_to_save = Integer.MAX_VALUE; + @Replaces(oldName = "row_cache_size_in_mb", converter = Converters.MEBIBYTES_DATA_STORAGE_LONG, deprecated = true) + public DataStorageSpec.LongMebibytesBound row_cache_size = new DataStorageSpec.LongMebibytesBound("0MiB"); + @Replaces(oldName = "row_cache_save_period", converter = Converters.SECONDS_CUSTOM_DURATION) diff --git a/databases/cassandra4/files/patch-src_java_org_apache_cassandra_db_commitlog_MemoryMappedSegment.java b/databases/cassandra4/files/patch-src_java_org_apache_cassandra_db_commitlog_MemoryMappedSegment.java index f70f7674b3ae..610828729281 100644 --- a/databases/cassandra4/files/patch-src_java_org_apache_cassandra_db_commitlog_MemoryMappedSegment.java +++ b/databases/cassandra4/files/patch-src_java_org_apache_cassandra_db_commitlog_MemoryMappedSegment.java @@ -1,11 +1,11 @@ --- src/java/org/apache/cassandra/db/commitlog/MemoryMappedSegment.java.orig 2019-10-24 16:42:10 UTC +++ src/java/org/apache/cassandra/db/commitlog/MemoryMappedSegment.java @@ -90,7 +90,7 @@ public class MemoryMappedSegment extends CommitLogSegm { throw new FSWriteError(e, getPath()); } -- NativeLibrary.trySkipCache(fd, startMarker, nextMarker, logFile.getAbsolutePath()); -+// NativeLibrary.trySkipCache(fd, startMarker, nextMarker, logFile.getAbsolutePath()); +- NativeLibrary.trySkipCache(fd, startMarker, nextMarker, logFile.absolutePath()); ++// NativeLibrary.trySkipCache(fd, startMarker, nextMarker, logFile.absolutePath()); } @Override diff --git a/databases/cassandra4/files/patch-src_java_org_apache_cassandra_service_NativeTransportService.java b/databases/cassandra4/files/patch-src_java_org_apache_cassandra_service_NativeTransportService.java index 1b1c2d0aadf3..14d877271d6f 100644 --- a/databases/cassandra4/files/patch-src_java_org_apache_cassandra_service_NativeTransportService.java +++ b/databases/cassandra4/files/patch-src_java_org_apache_cassandra_service_NativeTransportService.java @@ -1,18 +1,18 @@ ---- src/java/org/apache/cassandra/service/NativeTransportService.java.orig 2020-12-18 17:35:13 UTC +--- src/java/org/apache/cassandra/service/NativeTransportService.java.orig 2023-05-25 14:13:38 UTC +++ src/java/org/apache/cassandra/service/NativeTransportService.java -@@ -159,12 +159,15 @@ public class NativeTransportService +@@ -160,12 +160,15 @@ public class NativeTransportService */ public static boolean useEpoll() { + /* final boolean enableEpoll = Boolean.parseBoolean(System.getProperty("cassandra.native.epoll.enabled", "true")); if (enableEpoll && !Epoll.isAvailable() && NativeLibrary.osType == NativeLibrary.OSType.LINUX) logger.warn("epoll not available", Epoll.unavailabilityCause()); return enableEpoll && Epoll.isAvailable(); + */ + return false; // Epoll is only available for Linux. Prevent warning given that we otherwise pass ourselves off as Linux. } /** diff --git a/databases/cassandra4/files/patch-src_java_org_apache_cassandra_service_StartupChecks.java b/databases/cassandra4/files/patch-src_java_org_apache_cassandra_service_StartupChecks.java index 6f62b1c83ef8..0f46975e5a62 100644 --- a/databases/cassandra4/files/patch-src_java_org_apache_cassandra_service_StartupChecks.java +++ b/databases/cassandra4/files/patch-src_java_org_apache_cassandra_service_StartupChecks.java @@ -1,18 +1,17 @@ ---- src/java/org/apache/cassandra/service/StartupChecks.java.orig 2021-03-26 19:57:28 UTC +--- src/java/org/apache/cassandra/service/StartupChecks.java.orig 2023-05-25 14:13:38 UTC +++ src/java/org/apache/cassandra/service/StartupChecks.java -@@ -281,7 +281,14 @@ public class StartupChecks - { - public void execute() +@@ -363,7 +363,13 @@ public class StartupChecks { + if (options.isDisabled(getStartupCheckType())) + return; - SigarLibrary.instance.warnIfRunningInDegradedMode(); + try { + @SuppressWarnings("unused") + Class loadMe = org.hyperic.sigar.SigarException.class; -+ + SigarLibrary.instance.warnIfRunningInDegradedMode(); + } catch (NoClassDefFoundError e) { + logger.info("Could not initialize SIGAR library: SIGAR option not selected during install or jar no longer available."); + } } }; diff --git a/databases/cassandra4/files/patch-src_java_org_apache_cassandra_utils_FastByteOperations.java b/databases/cassandra4/files/patch-src_java_org_apache_cassandra_utils_FastByteOperations.java index 3f18ded96bcb..6cae029643ef 100644 --- a/databases/cassandra4/files/patch-src_java_org_apache_cassandra_utils_FastByteOperations.java +++ b/databases/cassandra4/files/patch-src_java_org_apache_cassandra_utils_FastByteOperations.java @@ -1,108 +1,108 @@ ---- src/java/org/apache/cassandra/utils/FastByteOperations.java.orig 2020-12-18 17:35:13 UTC +--- src/java/org/apache/cassandra/utils/FastByteOperations.java.orig 2026-03-17 23:20:36 UTC +++ src/java/org/apache/cassandra/utils/FastByteOperations.java -@@ -205,6 +205,20 @@ public class FastByteOperations +@@ -210,6 +210,20 @@ public class FastByteOperations static final boolean BIG_ENDIAN = ByteOrder.nativeOrder().equals(ByteOrder.BIG_ENDIAN); + private static byte unsafeGetByte(Object o, long offset) + { + return o == null + ? theUnsafe.getByte(offset) + : theUnsafe.getByte(o, offset); + } + + private static long unsafeGetLong(Object o, long offset) + { + return o == null + ? theUnsafe.getLong(offset) + : theUnsafe.getLong(o, offset); + } + public int compare(byte[] buffer1, int offset1, int length1, byte[] buffer2, int offset2, int length2) { return compareTo(buffer1, BYTE_ARRAY_BASE_OFFSET + offset1, length1, -@@ -228,7 +242,7 @@ public class FastByteOperations +@@ -233,7 +247,7 @@ public class FastByteOperations else { obj1 = null; - offset1 = theUnsafe.getLong(buffer1, DIRECT_BUFFER_ADDRESS_OFFSET) + position1; + offset1 = unsafeGetLong(buffer1, DIRECT_BUFFER_ADDRESS_OFFSET) + position1; } return compareTo(obj1, offset1, length1, buffer2, BYTE_ARRAY_BASE_OFFSET + offset2, length2); -@@ -249,7 +263,7 @@ public class FastByteOperations +@@ -254,7 +268,7 @@ public class FastByteOperations if (src.hasArray()) System.arraycopy(src.array(), src.arrayOffset() + srcPosition, trg, trgPosition, length); else - copy(null, srcPosition + theUnsafe.getLong(src, DIRECT_BUFFER_ADDRESS_OFFSET), trg, trgPosition, length); + copy(null, srcPosition + unsafeGetLong(src, DIRECT_BUFFER_ADDRESS_OFFSET), trg, trgPosition, length); } public void copy(byte[] src, int srcPosition, ByteBuffer trg, int trgPosition, int length) -@@ -272,7 +286,7 @@ public class FastByteOperations +@@ -277,7 +291,7 @@ public class FastByteOperations else { src = null; - srcOffset = theUnsafe.getLong(srcBuf, DIRECT_BUFFER_ADDRESS_OFFSET); + srcOffset = unsafeGetLong(srcBuf, DIRECT_BUFFER_ADDRESS_OFFSET); } copy(src, srcOffset + srcPosition, trgBuf, trgPosition, length); } -@@ -282,7 +296,7 @@ public class FastByteOperations +@@ -287,7 +301,7 @@ public class FastByteOperations if (trgBuf.hasArray()) copy(src, srcOffset, trgBuf.array(), trgBuf.arrayOffset() + trgPosition, length); else - copy(src, srcOffset, null, trgPosition + theUnsafe.getLong(trgBuf, DIRECT_BUFFER_ADDRESS_OFFSET), length); + copy(src, srcOffset, null, trgPosition + unsafeGetLong(trgBuf, DIRECT_BUFFER_ADDRESS_OFFSET), length); } public static void copy(Object src, long srcOffset, byte[] trg, int trgPosition, int length) -@@ -290,7 +304,7 @@ public class FastByteOperations +@@ -295,7 +309,7 @@ public class FastByteOperations if (length <= MIN_COPY_THRESHOLD) { for (int i = 0 ; i < length ; i++) - trg[trgPosition + i] = theUnsafe.getByte(src, srcOffset + i); + trg[trgPosition + i] = unsafeGetByte(src, srcOffset + i); } else { -@@ -329,7 +343,7 @@ public class FastByteOperations +@@ -334,7 +348,7 @@ public class FastByteOperations else { obj1 = null; - offset1 = theUnsafe.getLong(buffer1, DIRECT_BUFFER_ADDRESS_OFFSET); + offset1 = unsafeGetLong(buffer1, DIRECT_BUFFER_ADDRESS_OFFSET); } offset1 += buffer1.position(); length1 = buffer1.remaining(); -@@ -352,7 +366,7 @@ public class FastByteOperations +@@ -357,7 +371,7 @@ public class FastByteOperations else { obj2 = null; - offset2 = theUnsafe.getLong(buffer, DIRECT_BUFFER_ADDRESS_OFFSET); + offset2 = unsafeGetLong(buffer, DIRECT_BUFFER_ADDRESS_OFFSET); } int length2 = limit - position; offset2 += position; -@@ -385,8 +399,8 @@ public class FastByteOperations +@@ -390,8 +404,8 @@ public class FastByteOperations int wordComparisons = minLength & ~7; for (int i = 0; i < wordComparisons ; i += Longs.BYTES) { - long lw = theUnsafe.getLong(buffer1, memoryOffset1 + i); - long rw = theUnsafe.getLong(buffer2, memoryOffset2 + i); + long lw = unsafeGetLong(buffer1, memoryOffset1 + i); + long rw = unsafeGetLong(buffer2, memoryOffset2 + i); if (lw != rw) { -@@ -399,8 +413,8 @@ public class FastByteOperations +@@ -404,8 +418,8 @@ public class FastByteOperations for (int i = wordComparisons ; i < minLength ; i++) { - int b1 = theUnsafe.getByte(buffer1, memoryOffset1 + i) & 0xFF; - int b2 = theUnsafe.getByte(buffer2, memoryOffset2 + i) & 0xFF; + int b1 = unsafeGetByte(buffer1, memoryOffset1 + i) & 0xFF; + int b2 = unsafeGetByte(buffer2, memoryOffset2 + i) & 0xFF; if (b1 != b2) return b1 - b2; } diff --git a/databases/cassandra4/files/patch-src_java_org_apache_cassandra_utils_NativeLibrary.java b/databases/cassandra4/files/patch-src_java_org_apache_cassandra_utils_NativeLibrary.java index c9ff8e59e786..991989ee7013 100644 --- a/databases/cassandra4/files/patch-src_java_org_apache_cassandra_utils_NativeLibrary.java +++ b/databases/cassandra4/files/patch-src_java_org_apache_cassandra_utils_NativeLibrary.java @@ -1,14 +1,14 @@ ---- src/java/org/apache/cassandra/utils/NativeLibrary.java.orig 2020-08-28 13:55:56 UTC +--- src/java/org/apache/cassandra/utils/NativeLibrary.java.orig 2023-05-25 14:13:37 UTC +++ src/java/org/apache/cassandra/utils/NativeLibrary.java -@@ -143,7 +143,10 @@ public final class NativeLibrary - else if (osName.contains("windows")) - return WINDOWS; +@@ -140,7 +140,10 @@ public final class NativeLibrary + else if (osName.contains("mac")) + return MAC; -- logger.warn("the current operating system, {}, is unsupported by cassandra", osName); +- logger.warn("the current operating system, {}, is unsupported by Cassandra", osName); + if (osName.contains("bsd")) -+ logger.warn("the current operating system, {}, is fantastic, though not officially supported by cassandra", osName); ++ logger.warn("the current operating system, {}, is fantastic, though not officially supported by Cassandra", osName); + else -+ logger.warn("the current operating system, {}, is unsupported by cassandra", osName); ++ logger.warn("the current operating system, {}, is unsupported by Cassandra", osName); if (osName.contains("aix")) return AIX; else diff --git a/databases/cassandra4/files/patch-test_conf_cassandra-murmur.yaml b/databases/cassandra4/files/patch-test_conf_cassandra-murmur.yaml index b9ec0a7b5450..91adb324a2b5 100644 --- a/databases/cassandra4/files/patch-test_conf_cassandra-murmur.yaml +++ b/databases/cassandra4/files/patch-test_conf_cassandra-murmur.yaml @@ -1,10 +1,10 @@ ---- test/conf/cassandra-murmur.yaml.orig 2021-05-25 15:24:22 UTC +--- test/conf/cassandra-murmur.yaml.orig 2023-05-25 14:13:38 UTC +++ test/conf/cassandra-murmur.yaml @@ -36,7 +36,6 @@ server_encryption_options: incremental_backups: true concurrent_compactors: 4 - compaction_throughput_mb_per_sec: 0 + compaction_throughput: 0MiB/s -row_cache_class_name: org.apache.cassandra.cache.OHCProvider - row_cache_size_in_mb: 16 - enable_user_defined_functions: true - enable_scripted_user_defined_functions: true + row_cache_size: 16MiB + user_defined_functions_enabled: true + scripted_user_defined_functions_enabled: true diff --git a/databases/cassandra4/files/patch-test_conf_cassandra-seeds.yaml b/databases/cassandra4/files/patch-test_conf_cassandra-seeds.yaml index af236bca394c..e4034d59fdfa 100644 --- a/databases/cassandra4/files/patch-test_conf_cassandra-seeds.yaml +++ b/databases/cassandra4/files/patch-test_conf_cassandra-seeds.yaml @@ -1,10 +1,10 @@ ---- test/conf/cassandra-seeds.yaml.orig 2021-05-25 15:24:52 UTC +--- test/conf/cassandra-seeds.yaml.orig 2023-05-25 14:13:38 UTC +++ test/conf/cassandra-seeds.yaml @@ -37,7 +37,6 @@ server_encryption_options: incremental_backups: true concurrent_compactors: 4 - compaction_throughput_mb_per_sec: 0 + compaction_throughput: 0MiB/s -row_cache_class_name: org.apache.cassandra.cache.OHCProvider - row_cache_size_in_mb: 16 - enable_user_defined_functions: true - enable_scripted_user_defined_functions: true + row_cache_size: 16MiB + user_defined_functions_enabled: true + scripted_user_defined_functions_enabled: true diff --git a/databases/cassandra4/files/patch-test_conf_cassandra.yaml b/databases/cassandra4/files/patch-test_conf_cassandra.yaml index 8cdaf3180e12..0d5f27e572d5 100644 --- a/databases/cassandra4/files/patch-test_conf_cassandra.yaml +++ b/databases/cassandra4/files/patch-test_conf_cassandra.yaml @@ -1,10 +1,10 @@ ---- test/conf/cassandra.yaml.orig 2018-03-06 21:24:02 UTC +--- test/conf/cassandra.yaml.orig 2023-05-25 14:13:38 UTC +++ test/conf/cassandra.yaml @@ -40,7 +40,6 @@ server_encryption_options: incremental_backups: true concurrent_compactors: 4 - compaction_throughput_mb_per_sec: 0 + compaction_throughput: 0MiB/s -row_cache_class_name: org.apache.cassandra.cache.OHCProvider - row_cache_size_in_mb: 16 - enable_user_defined_functions: true - enable_scripted_user_defined_functions: true + row_cache_size: 16MiB + user_defined_functions_enabled: true + scripted_user_defined_functions_enabled: true diff --git a/databases/cassandra4/files/patch-test_conf_unit-test-conf_test-native-port.yaml b/databases/cassandra4/files/patch-test_conf_unit-test-conf_test-native-port.yaml index 72ab0ee6d9af..725f03bd16bc 100644 --- a/databases/cassandra4/files/patch-test_conf_unit-test-conf_test-native-port.yaml +++ b/databases/cassandra4/files/patch-test_conf_unit-test-conf_test-native-port.yaml @@ -1,10 +1,10 @@ ---- test/conf/unit-test-conf/test-native-port.yaml.orig 2021-05-25 15:19:42 UTC +--- test/conf/unit-test-conf/test-native-port.yaml.orig 2023-05-25 14:13:37 UTC +++ test/conf/unit-test-conf/test-native-port.yaml @@ -40,7 +40,6 @@ server_encryption_options: incremental_backups: true concurrent_compactors: 4 - compaction_throughput_mb_per_sec: 0 + compaction_throughput: 0MiB/s -row_cache_class_name: org.apache.cassandra.cache.OHCProvider - row_cache_size_in_mb: 16 - enable_user_defined_functions: true - enable_scripted_user_defined_functions: true + row_cache_size: 16MiB + user_defined_functions_enabled: true + scripted_user_defined_functions_enabled: true diff --git a/databases/cassandra4/pkg-plist b/databases/cassandra4/pkg-plist index da8be43e7b34..564a6cfd1544 100644 --- a/databases/cassandra4/pkg-plist +++ b/databases/cassandra4/pkg-plist @@ -1,149 +1,153 @@ +%%AMD64ONLY%%%%DATADIR%%/lib/zstd-jni-%%ZSTDJNI_VERSION%%-freebsd_amd64.jar %%DATADIR%%/bin/cassandra %%DATADIR%%/bin/cassandra.in.sh %%DATADIR%%/bin/cqlsh %%DATADIR%%/bin/cqlsh.py %%DATADIR%%/bin/debug-cql %%DATADIR%%/bin/nodetool %%DATADIR%%/bin/sstableloader %%DATADIR%%/bin/sstablescrub %%DATADIR%%/bin/sstableupgrade %%DATADIR%%/bin/sstableutil %%DATADIR%%/bin/sstableverify %%DATADIR%%/bin/stop-server %%DATADIR%%/CHANGES.txt %%DATADIR%%/lib/airline-0.8.jar %%DATADIR%%/lib/antlr-runtime-3.5.2.jar %%DATADIR%%/lib/apache-cassandra-%%DISTVERSION%%.jar -%%DATADIR%%/lib/asm-7.1.jar -%%DATADIR%%/lib/caffeine-2.5.6.jar -%%DATADIR%%/lib/cassandra-driver-core-3.11.0-shaded.jar +%%DATADIR%%/lib/asm-9.1.jar +%%DATADIR%%/lib/caffeine-2.9.2.jar +%%DATADIR%%/lib/cassandra-driver-core-3.11.5-shaded.jar %%DATADIR%%/lib/cassandra-driver-internal-only-3.25.0.zip +%%DATADIR%%/lib/checker-qual-3.10.0.jar %%DATADIR%%/lib/chronicle-bytes-2.20.111.jar %%DATADIR%%/lib/chronicle-core-2.20.126.jar %%DATADIR%%/lib/chronicle-queue-5.20.123.jar %%DATADIR%%/lib/chronicle-threads-2.20.111.jar %%DATADIR%%/lib/chronicle-wire-2.20.117.jar %%DATADIR%%/lib/commons-cli-1.1.jar %%DATADIR%%/lib/commons-codec-1.9.jar -%%DATADIR%%/lib/commons-lang3-3.11.jar +%%DATADIR%%/lib/commons-lang3-3.18.0.jar %%DATADIR%%/lib/commons-math3-3.2.jar %%DATADIR%%/lib/concurrent-trees-2.4.0.jar %%DATADIR%%/lib/ecj-4.6.1.jar +%%DATADIR%%/lib/error_prone_annotations-2.5.1.jar %%DATADIR%%/lib/futures-2.1.6-py2.py3-none-any.zip %%DATADIR%%/lib/geomet-0.1.0.zip %%DATADIR%%/lib/guava-27.0-jre.jar -%%DATADIR%%/lib/HdrHistogram-2.1.9.jar +%%DATADIR%%/lib/HdrHistogram-2.1.12.jar %%DATADIR%%/lib/high-scale-lib-1.0.6.jar %%DATADIR%%/lib/hppc-0.8.1.jar +%%DATADIR%%/lib/ipaddress-5.3.3.jar %%DATADIR%%/lib/j2objc-annotations-1.3.jar -%%DATADIR%%/lib/jackson-annotations-2.13.2.jar -%%DATADIR%%/lib/jackson-core-2.13.2.jar -%%DATADIR%%/lib/jackson-databind-2.13.2.2.jar +%%DATADIR%%/lib/jackson-annotations-2.19.2.jar +%%DATADIR%%/lib/jackson-core-2.19.2.jar +%%DATADIR%%/lib/jackson-databind-2.19.2.jar +%%DATADIR%%/lib/jackson-datatype-jsr310-2.19.2.jar %%DATADIR%%/lib/jamm-0.3.2.jar -%%DATADIR%%/lib/java-cup-runtime-11b-20160615.jar %%DATADIR%%/lib/javax.inject-1.jar %%DATADIR%%/lib/jbcrypt-0.4.jar %%DATADIR%%/lib/jcl-over-slf4j-1.7.25.jar %%DATADIR%%/lib/jcommander-1.30.jar %%DATADIR%%/lib/jctools-core-3.1.0.jar -%%DATADIR%%/lib/jflex-1.8.2.jar -%%DATADIR%%/lib/jna-5.6.0.jar +%%DATADIR%%/lib/jna-5.9.0.jar %%DATADIR%%/lib/json-simple-1.1.jar +%%DATADIR%%/lib/jsr305-2.0.2.jar %%DATADIR%%/lib/jvm-attach-api-1.5.jar %%DATADIR%%/lib/log4j-over-slf4j-1.7.25.jar %%DATADIR%%/lib/logback-classic-1.2.9.jar %%DATADIR%%/lib/logback-core-1.2.9.jar -%%DATADIR%%/lib/lz4-java-1.8.0.jar +%%DATADIR%%/lib/lz4-java-1.10.1.jar %%DATADIR%%/lib/metrics-core-3.1.5.jar %%DATADIR%%/lib/metrics-jvm-3.1.5.jar %%DATADIR%%/lib/metrics-logback-3.1.5.jar %%DATADIR%%/lib/mxdump-0.14.jar -%%DATADIR%%/lib/netty.jar %%DATADIR%%/lib/netty-tcnative-boringssl-static-2.0.36.Final.jar +%%DATADIR%%/lib/netty.jar %%DATADIR%%/lib/psjava-0.1.19.jar +%%DATADIR%%/lib/pure_sasl-0.6.2-py2-none-any.zip %%DATADIR%%/lib/reporter-config-base-3.0.3.jar %%DATADIR%%/lib/reporter-config3-3.0.3.jar %%DATADIR%%/lib/six-1.12.0-py2.py3-none-any.zip %%DATADIR%%/lib/sjk-cli-0.14.jar %%DATADIR%%/lib/sjk-core-0.14.jar %%DATADIR%%/lib/sjk-json-0.14.jar %%DATADIR%%/lib/sjk-stacktrace-0.14.jar %%DATADIR%%/lib/slf4j-api-1.7.25.jar %%DATADIR%%/lib/snakeyaml-1.26.jar %%DATADIR%%/lib/snappy-java.jar %%DATADIR%%/lib/snowball-stemmer-1.3.0.581.1.jar %%DATADIR%%/lib/ST4-4.0.8.jar %%DATADIR%%/lib/stream-2.5.2.jar -%%AMD64ONLY%%%%DATADIR%%/lib/zstd-jni-%%ZSTDJNI_VERSION%%-freebsd_amd64.jar -%%I386ONLY%%%%DATADIR%%/lib/zstd-jni-%%ZSTDJNI_VERSION%%-freebsd_i386.jar %%DATADIR%%/LICENSE.txt %%DATADIR%%/NEWS.txt %%DATADIR%%/NOTICE.txt %%DATADIR%%/pylib/cqlshlib/__init__.py +%%DATADIR%%/pylib/cqlshlib/authproviderhandling.py %%DATADIR%%/pylib/cqlshlib/copyutil.py %%DATADIR%%/pylib/cqlshlib/cql3handling.py %%DATADIR%%/pylib/cqlshlib/cqlhandling.py %%DATADIR%%/pylib/cqlshlib/cqlshhandling.py %%DATADIR%%/pylib/cqlshlib/displaying.py %%DATADIR%%/pylib/cqlshlib/formatting.py %%DATADIR%%/pylib/cqlshlib/helptopics.py %%DATADIR%%/pylib/cqlshlib/pylexotron.py %%DATADIR%%/pylib/cqlshlib/saferscanner.py -%%DATADIR%%/pylib/cqlshlib/setup.cfg +%%DATADIR%%/pylib/cqlshlib/serverversion.py %%DATADIR%%/pylib/cqlshlib/sslhandling.py %%DATADIR%%/pylib/cqlshlib/tracing.py %%DATADIR%%/pylib/cqlshlib/util.py %%DATADIR%%/pylib/cqlshlib/wcwidth.py %%DATADIR%%/pylib/README.asc -%%DATADIR%%/pylib/pytest.ini %%DATADIR%%/pylib/requirements.txt %%DATADIR%%/pylib/setup.py %%DATADIR%%/tools/bin/auditlogviewer %%DATADIR%%/tools/bin/cassandra-stress -%%DATADIR%%/tools/bin/cassandra-stressd %%DATADIR%%/tools/bin/cassandra.in.sh %%DATADIR%%/tools/bin/compaction-stress %%DATADIR%%/tools/bin/fqltool %%DATADIR%%/tools/bin/generatetokens +%%DATADIR%%/tools/bin/hash_password %%DATADIR%%/tools/bin/jmxtool %%DATADIR%%/tools/bin/sstabledump %%DATADIR%%/tools/bin/sstableexpiredblockers %%DATADIR%%/tools/bin/sstablelevelreset %%DATADIR%%/tools/bin/sstablemetadata %%DATADIR%%/tools/bin/sstableofflinerelevel %%DATADIR%%/tools/bin/sstablerepairedset %%DATADIR%%/tools/bin/sstablesplit %%DATADIR%%/tools/cqlstress-counter-example.yaml %%DATADIR%%/tools/cqlstress-example.yaml %%DATADIR%%/tools/cqlstress-insanity-example.yaml %%DATADIR%%/tools/cqlstress-lwt-example.yaml %%DATADIR%%/tools/lib/fqltool.jar %%DATADIR%%/tools/lib/stress.jar -%%ETCDIR%%/metrics-reporter-config-sample.yaml %%ETCDIR%%/README.txt %%ETCDIR%%/triggers/README.txt %%SIGAR%%%%DATADIR%%/lib/sigar.jar @sample %%ETCDIR%%/cassandra-env.sh.sample @sample %%ETCDIR%%/cassandra-jaas.config.sample @sample %%ETCDIR%%/cassandra-rackdc.properties.sample @sample %%ETCDIR%%/cassandra-topology.properties.sample @sample %%ETCDIR%%/cassandra.yaml.sample @sample %%ETCDIR%%/commitlog_archiving.properties.sample @sample %%ETCDIR%%/cqlshrc.sample +@sample %%ETCDIR%%/credentials.sample @sample %%ETCDIR%%/hotspot_compiler.sample @sample %%ETCDIR%%/jvm-clients.options.sample @sample %%ETCDIR%%/jvm-server.options.sample @sample %%ETCDIR%%/jvm11-clients.options.sample @sample %%ETCDIR%%/jvm11-server.options.sample @sample %%ETCDIR%%/jvm8-clients.options.sample @sample %%ETCDIR%%/jvm8-server.options.sample @sample %%ETCDIR%%/logback-tools.xml.sample @sample %%ETCDIR%%/logback.xml.sample +@sample %%ETCDIR%%/metrics-reporter-config.yaml.sample bin/cassandra bin/cqlsh bin/nodetool bin/sstableloader bin/sstablescrub bin/sstableupgrade bin/sstableutil bin/sstableverify