This is an automated email from the ASF dual-hosted git repository.
mwalch pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/accumulo-website.git
The following commit(s) were added to refs/heads/master by this push:
new 9729b41 Simplified custom liquid tags and created documentation (#94)
9729b41 is described below
commit 9729b413bcebe9f6155563c50dd2c0bda633e725
Author: Mike Walch <[email protected]>
AuthorDate: Tue Jul 10 16:01:11 2018 -0400
Simplified custom liquid tags and created documentation (#94)
---
README.md | 14 +++
_docs-2-0/administration/caching.md | 18 ++--
.../administration/configuration-management.md | 8 +-
_docs-2-0/administration/in-depth-install.md | 48 +++++-----
_docs-2-0/administration/kerberos.md | 6 +-
_docs-2-0/administration/monitoring-metrics.md | 23 ++---
_docs-2-0/administration/multivolume.md | 4 +-
_docs-2-0/administration/ssl.md | 34 +++----
_docs-2-0/administration/tracing.md | 18 ++--
_docs-2-0/development/security.md | 2 +-
_docs-2-0/development/summaries.md | 12 +--
_docs-2-0/getting-started/clients.md | 20 ++---
_docs-2-0/getting-started/design.md | 12 +--
_docs-2-0/getting-started/table_configuration.md | 16 ++--
_docs-2-0/troubleshooting/advanced.md | 2 +-
_docs-2-0/troubleshooting/basic.md | 4 +-
_docs-2-0/troubleshooting/performance.md | 27 +++---
_plugins/links.rb | 100 ++++++++++++++-------
18 files changed, 195 insertions(+), 173 deletions(-)
diff --git a/README.md b/README.md
index 8db6b0e..fcbb75d 100644
--- a/README.md
+++ b/README.md
@@ -72,5 +72,19 @@ the given file into your `.git/hook` directory:
cp ./_devtools/git-hooks/post-commit .git/hooks/
+## Custom liquid tags
+
+Custom liquid tags are used to make linking to javadocs, properties, and
documents easier.
+The source for these tags is at [_plugins/links.rb](_plugins/links.rb).
+
+| Tag | Description | Options
| Examples
|
+| ----- | ---------------------- |
-------------------------------------------------------------------------------
| ---------------------------------------------------- |
+| jlink | Creates Javadoc link | Link text will be class name by default.
Use `-f` for full package + class name | `{% jlink -f
org.apache.accumulo.core.client.Connector %}` |
+| jurl | Creates Javadoc URL | None
| `{% jurl
org.apache.accumulo.core.client.Connector %}` |
+| plink | Creates Property link | Assumes server property by default. Use
`-c` to link to client properties | `{% plink -c instance.name %}`
|
+| purl | Creates Property URL | Default is servery property. Use `-c` to
link to client properties | `{% plink instance.volumes %}`
|
+| dlink | Creates Documentation link | None
| `{% dlink getting-stared/clients %}`
|
+| durl | Creates Documentation URL | None
| `{% durl troubleshooting/performance
%}` |
+
[Jekyll]: https://jekyllrb.com/
[Bundler]: https://bundler.io/
diff --git a/_docs-2-0/administration/caching.md
b/_docs-2-0/administration/caching.md
index c7b99a3..c516dc6 100644
--- a/_docs-2-0/administration/caching.md
+++ b/_docs-2-0/administration/caching.md
@@ -20,11 +20,11 @@ for tables where read performance is critical.
The index and data block caches are configured for tables by the following
properties:
-* [table.cache.block.enable] - enables data block cache on the table (default
is `false`)
-* [table.cache.index.enable] - enables index block cache on the table (default
is `true`)
+* {% plink table.cache.block.enable %} - enables data block cache on the table
(default is `false`)
+* {% plink table.cache.index.enable %} - enables index block cache on the
table (default is `true`)
While the index block cache is enabled by default for all Accumulo tables,
users must enable the data block cache by
-settting [table.cache.block.enable] to `true` in the shell:
+settting {% plink table.cache.block.enable %} to `true` in the shell:
config -t mytable -s table.cache.block.enable=true
@@ -37,13 +37,9 @@ conn.tableOperations().setProperty("mytable",
"table.cache.block.enable", "true"
The size of the index and data block caches (which are shared by all tablets
of tablet server) can be changed from
their defaults by setting the following properties:
-* [tserver.cache.data.size]
-* [tserver.cache.index.size]
+* {% plink tserver.cache.data.size %}
+* {% plink tserver.cache.index.size %}
-[tserver]: {{ page.docs_baseurl }}/getting-started/design#tablet-server-1
-[RFiles]: {{ page.docs_baseurl}}/getting-started/design#rfile
-[table.cache.block.enable]: {{ page.docs_baseurl
}}/administration/properties#table_cache_block_enable
-[table.cache.index.enable]: {{ page.docs_baseurl
}}/administration/properties#table_cache_index_enable
-[tserver.cache.data.size]: {{ page.docs_baseurl
}}/administration/properties#tserver_cache_data_size
-[tserver.cache.index.size]: {{ page.docs_baseurl
}}/administration/properties#tserver_cache_data_size
+[tserver]: {% durl getting-started/design#tablet-server-1 %}
+[RFiles]: {% durl getting-started/design#rfile %}
[tableops]: {% jurl
org.apache.accumulo.core.client.admin.TableOperations#setProperty-java.lang.String-java.lang.String-java.lang.String-
%}
diff --git a/_docs-2-0/administration/configuration-management.md
b/_docs-2-0/administration/configuration-management.md
index 69584f3..8577017 100644
--- a/_docs-2-0/administration/configuration-management.md
+++ b/_docs-2-0/administration/configuration-management.md
@@ -112,7 +112,7 @@ default | table.compaction.minor.logs.threshold ..... | 3
default | table.failures.ignore ..................... | false
```
-[client-conn]: {{ page.docs_baseurl }}/getting-started/clients#connecting
-[client-props]: {{ page.docs_baseurl }}/development/client-properties
-[props]: {{ page.docs_baseurl }}/administration/properties
-[tableprops]: {{ page.docs_baseurl }}/administration/properties#table_prefix
+[client-conn]: {% durl getting-started/clients#connecting %}
+[client-props]: {% durl development/client-properties %}
+[props]: {% durl administration/properties %}
+[tableprops]: {% purl table.prefix %}
diff --git a/_docs-2-0/administration/in-depth-install.md
b/_docs-2-0/administration/in-depth-install.md
index 94bcc14..d48c51c 100644
--- a/_docs-2-0/administration/in-depth-install.md
+++ b/_docs-2-0/administration/in-depth-install.md
@@ -686,27 +686,27 @@ same version your Accumulo is built with.
Please check the release notes for your Accumulo version or use the
mailing lists at https://accumulo.apache.org for more info.
-[quick]: {{ page.docs_baseurl }}/getting-started/quick-install
-[monitor]: {{page.docs_baseurl}}/administration/monitoring-metrics#monitor
-[config-mgmt]: {{page.docs_baseurl}}/administration/configuration-management
-[instance.zookeeper.host]: {{ page.docs_baseurl
}}/administration/properties#instance_zookeeper_host
-[instance.secret]: {{ page.docs_baseurl
}}/administration/properties#instance_secret
-[monitor.port.log4j]: {{ page.docs_baseurl
}}/administration/properties#monitor_port_log4j
-[monitor.port.client]: {{ page.docs_baseurl
}}/administration/properties#monitor_port_client
-[tserver.port.client]: {{ page.docs_baseurl
}}/administration/properties#tserver_port_client
-[gc.port.client]: {{ page.docs_baseurl
}}/administration/properties#gc_port_client
-[master.port.client]: {{ page.docs_baseurl
}}/administration/properties#master_port_client
-[trace.port.client]: {{ page.docs_baseurl
}}/administration/properties#trace_port_client
-[master.replication.coordinator.port]: {{ page.docs_baseurl
}}/administration/properties#master_replication_coordinator_port
-[replication.receipt.service.port]: {{ page.docs_baseurl
}}/administration/properties#replication_receipt_service_port
-[tserver.memory.maps.native.enabled]: {{ page.docs_baseurl
}}/administration/properties#tserver_memory_maps_native_enabled
-[tserver.memory.maps.max]: {{ page.docs_baseurl
}}/administration/properties#tserver_memory_maps_max
-[table.compaction.minor.logs.threshold]: {{ page.docs_baseurl
}}/administration/properties#table_compaction_minor_logs_threshold
-[tserver.walog.max.size]: {{ page.docs_baseurl
}}/administration/properties#tserver_walog_max_size
-[tserver.wal.blocksize]: {{ page.docs_baseurl
}}/administration/properties#tserver_wal_blocksize
-[general.security.credential.provider.paths]: {{ page.docs_baseurl
}}/administration/properties#general_security_credential_provider_paths
-[general.classpaths]: {{ page.docs_baseurl
}}/administration/properties#general_classpaths
-[general.dynamic.classpaths]: {{ page.docs_baseurl
}}/administration/properties#general_dynamic_classpaths
-[general.vfs.classpaths]: {{ page.docs_baseurl
}}/administration/properties#general_vfs_classpaths
-[client-conn]: {{ page.docs_baseurl }}/getting-started/clients#connecting
-[client-props]: {{ page.docs_baseurl }}/development/client-properties
+[quick]: {% durl getting-started/quick-install %}
+[monitor]: {% durl administration/monitoring-metrics#monitor %}
+[config-mgmt]: {% durl administration/configuration-management %}
+[instance.zookeeper.host]: {% purl instance.zookeeper.host %}
+[instance.secret]: {% purl instance.secret %}
+[monitor.port.log4j]: {% purl monitor.port.log4j %}
+[monitor.port.client]: {% purl monitor.port.client %}
+[tserver.port.client]: {% purl tserver.port.client %}
+[gc.port.client]: {% purl gc.port.client %}
+[master.port.client]: {% purl master.port.client %}
+[trace.port.client]: {% purl trace.port.client %}
+[master.replication.coordinator.port]: {% purl
master.replication.coordinator.port %}
+[replication.receipt.service.port]: {% purl replication.receipt.service.port %}
+[tserver.memory.maps.native.enabled]: {% purl
tserver.memory.maps.native.enabled %}
+[tserver.memory.maps.max]: {% purl tserver.memory.maps.max %}
+[table.compaction.minor.logs.threshold]: {% purl
table.compaction.minor.logs.threshold %}
+[tserver.walog.max.size]: {% purl tserver.walog.max.size %}
+[tserver.wal.blocksize]: {% purl tserver.wal.blocksize %}
+[general.security.credential.provider.paths]: {% purl
general.security.credential.provider.paths %}
+[general.classpaths]: {% purl general.classpaths %}
+[general.dynamic.classpaths]: {% purl general.dynamic.classpaths %}
+[general.vfs.classpaths]: {% purl general.vfs.classpaths %}
+[client-conn]: {% durl getting-started/clients#connecting %}
+[client-props]: {% durl development/client-properties %}
diff --git a/_docs-2-0/administration/kerberos.md
b/_docs-2-0/administration/kerberos.md
index dc89a43..f6d6d40 100644
--- a/_docs-2-0/administration/kerberos.md
+++ b/_docs-2-0/administration/kerberos.md
@@ -602,6 +602,6 @@ java.lang.AssertionError: AuthenticationToken should not be
null
Ensure you have set `trace.token.property.keytab` to point to a keytab for the
principal defined in `trace.user` in the `accumulo-site.xml` file for the
Monitor, since that should work in all versions of Accumulo.
-[sasl.enabled]: {{ page.docs_baseurl
}}/development/client-properties#sasl_enabled
-[sasl.qop]: {{ page.docs_baseurl }}/development/client-properties#sasl_qop
-[sasl.kerberos.server.primary]: {{ page.docs_baseurl
}}/development/client-properties#sasl_kerberos_server_primary
+[sasl.enabled]: {% purl -c sasl.enabled %}
+[sasl.qop]: {% purl -c sasl.qop %}
+[sasl.kerberos.server.primary]: {% purl -c sasl.kerberos.server.primary %}
diff --git a/_docs-2-0/administration/monitoring-metrics.md
b/_docs-2-0/administration/monitoring-metrics.md
index d97ec0e..add252c 100644
--- a/_docs-2-0/administration/monitoring-metrics.md
+++ b/_docs-2-0/administration/monitoring-metrics.md
@@ -43,10 +43,10 @@ is strongly recommended that the Monitor is not exposed to
any publicly-accessib
SSL may be enabled for the monitor page by setting the following properties in
the `accumulo-site.xml` file:
- * [monitor.ssl.keyStore]
- * [monitor.ssl.keyStorePassword]
- * [monitor.ssl.trustStore]
- * [monitor.ssl.trustStorePassword]
+ * {% plink monitor.ssl.keyStore %}
+ * {% plink monitor.ssl.keyStorePassword %}
+ * {% plink monitor.ssl.trustStore %}
+ * {% plink monitor.ssl.trustStorePassword %}
If the Accumulo conf directory has been configured (in particular the
`accumulo-env.sh` file must be set up), the
`accumulo-util gen-monitor-cert` command can be used to create the keystore
and truststore files with random passwords. The command
@@ -55,8 +55,8 @@ Java `keytool` command, whose usage can be seen in the
`accumulo-util` script.
If desired, the SSL ciphers allowed for connections can be controlled via the
following properties in `accumulo-site.xml`:
- * [monitor.ssl.include.ciphers]
- * [monitor.ssl.exclude.ciphers]
+ * {% plink monitor.ssl.include.ciphers %}
+ * {% plink monitor.ssl.exclude.ciphers %}
If SSL is enabled, the monitor URL can only be accessed via https.
This also allows you to access the Accumulo shell through the monitor page.
@@ -70,7 +70,7 @@ Accumulo can expose metrics through a legacy metrics library
and using the Hadoo
### Legacy Metrics
Accumulo has a legacy metrics library that can be exposes metrics using JMX
endpoints or file-based logging. These metrics can
-be enabled by setting [general.legacy.metrics] to `true` in
`accumulo-site.xml` and placing the `accumulo-metrics.xml`
+be enabled by setting {% plink general.legacy.metrics %} to `true` in
`accumulo-site.xml` and placing the `accumulo-metrics.xml`
configuration file on the classpath (which is typically done by placing the
file in the `conf/` directory). A template for
`accumulo-metrics.xml` can be found in `conf/templates` of the Accumulo
tarball.
@@ -102,11 +102,4 @@ Below are additional resources for configuring Metrics2:
[grafana-post]: {{ site.baseurl }}/blog/2018/03/22/view-metrics-in-grafana/
[metrics2-javadoc]:
https://hadoop.apache.org/docs/current/api/org/apache/hadoop/metrics2/package-summary.html
-[tracing]: {{page.docs_baseurl}}/administration/tracing
-[monitor.ssl.keyStore]: {{ page.docs_baseurl
}}/administration/properties#monitor_ssl_keyStore
-[monitor.ssl.keyStorePassword]: {{ page.docs_baseurl
}}/administration/properties#monitor_ssl_keystorePassword
-[monitor.ssl.trustStore]: {{ page.docs_baseurl
}}/administration/properties#monitor_ssl_trustStore
-[monitor.ssl.trustStorePassword]: {{ page.docs_baseurl
}}/administration/properties#monitor_ssl_trustStorePassword
-[monitor.ssl.include.ciphers]: {{ page.docs_baseurl
}}/administration/properties#monitor_ssl_include_ciphers
-[monitor.ssl.exclude.ciphers]: {{ page.docs_baseurl
}}/administration/properties#monitor_ssl_exclude_ciphers
-[general.legacy.metrics]: {{ page.docs_baseurl
}}/administration/properties#general_legacy_metrics
+[tracing]: {% durl administration/tracing %}
diff --git a/_docs-2-0/administration/multivolume.md
b/_docs-2-0/administration/multivolume.md
index 604d2fe..6d418a8 100644
--- a/_docs-2-0/administration/multivolume.md
+++ b/_docs-2-0/administration/multivolume.md
@@ -72,5 +72,5 @@ available in Hadoop 2.0, which allows DataNodes to respond to
multiple
NameNode servers, so you do not have to partition your DataNodes by
NameNode.
-[instance.volumes]: {% sprop instance.volumes %}
-[instance.volumes.replacements]: {% sprop instance.volumes.replacements %}
+[instance.volumes]: {% purl instance.volumes %}
+[instance.volumes.replacements]: {% purl instance.volumes.replacements %}
diff --git a/_docs-2-0/administration/ssl.md b/_docs-2-0/administration/ssl.md
index c28e92e..07db4fe 100644
--- a/_docs-2-0/administration/ssl.md
+++ b/_docs-2-0/administration/ssl.md
@@ -32,14 +32,14 @@ these files already exist.
In `accumulo-site.xml`, the following properties are required:
-* [rpc.javax.net.ssl.keyStore] = _The path on the local filesystem to the
keystore containing the server's certificate_
-* [rpc.javax.net.ssl.keyStorePassword] = _The password for the keystore
containing the server's certificate_
-* [rpc.javax.net.ssl.trustStore] = _The path on the local filesystem to the
keystore containing the certificate authority's public key_
-* [rpc.javax.net.ssl.trustStorePassword] = _The password for the keystore
containing the certificate authority's public key_
-* [instance.rpc.ssl.enabled] = _true_
+* {% plink rpc.javax.net.ssl.keyStore %} = _The path on the local filesystem
to the keystore containing the server's certificate_
+* {% plink rpc.javax.net.ssl.keyStorePassword %} = _The password for the
keystore containing the server's certificate_
+* {% plink rpc.javax.net.ssl.trustStore %} = _The path on the local filesystem
to the keystore containing the certificate authority's public key_
+* {% plink rpc.javax.net.ssl.trustStorePassword %} = _The password for the
keystore containing the certificate authority's public key_
+* {% plink instance.rpc.ssl.enabled %} = _true_
Optionally, SSL client-authentication (two-way SSL) can also be enabled by
setting
-`instance.rpc.ssl.clientAuth=true` in `accumulo-site.xml`.
+{% plink instance.rpc.ssl.clientAuth %} `true` in `accumulo-site.xml`.
This requires that each client has access to valid certificate to set up a
secure connection
to the servers. By default, Accumulo uses one-way SSL which does not require
clients to have
their own certificate.
@@ -51,15 +51,15 @@ special configuration. This is typically accomplished by
[creating Accumulo
clients][clients] using `accumulo-client.properties` and setting the following
the properties to connect to an Accumulo instance using SSL:
-* [ssl.enabled] to `true`
-* [ssl.truststore.path]
-* [ssl.truststore.password]
+* {% plink -c ssl.enabled %} to `true`
+* {% plink -c ssl.truststore.path %}
+* {% plink -c ssl.truststore.password %}
If two-way SSL is enabled for the Accumulo instance (by setting
[instance.rpc.ssl.clientAuth] to `true` in `accumulo-site.xml`),
Accumulo clients must also define their own certificate by setting the
following properties:
-* [ssl.keystore.path]
-* [ssl.keystore.password]
+* {% plink -c ssl.keystore.path %}
+* {% plink -c ssl.keystore.password %}
## Generating SSL material using OpenSSL
@@ -122,15 +122,3 @@ The `server.jks` file is the Java keystore containing the
certificate for a give
methods are equivalent whether the certificate is generate for an Accumulo
server or a client.
[clients]: {{ page.docs_baseurl }}/getting-started/clients#connecting
-[ssl.enabled]: {{ page.docs_baseurl
}}/development/client-properties#ssl_enabled
-[ssl.truststore.path]: {{ page.docs_baseurl
}}/development/client-properties#ssl_truststore_path
-[ssl.truststore.password]: {{ page.docs_baseurl
}}/development/client-properties#ssl_truststore_password
-[ssl.keystore.path]: {{ page.docs_baseurl
}}/development/client-properties#ssl_keystore_path
-[ssl.keystore.password]: {{ page.docs_baseurl
}}/development/client-properties#ssl_keystore_password
-[instance.secret]: {% sprop instance.secret %}
-[rpc.javax.net.ssl.trustStore]: {% sprop rpc.javax.net.ssl.trustStore %}
-[rpc.javax.net.ssl.trustStorePassword]: {% sprop
rpc.javax.net.ssl.trustStorePassword %}
-[instance.rpc.ssl.enabled]: {% sprop instance.rpc.ssl.enabled %}
-[rpc.javax.net.ssl.keyStore]: {% sprop rpc.javax.net.ssl.keyStore %}
-[rpc.javax.net.ssl.keyStorePassword]: {% sprop
rpc.javax.net.ssl.keyStorePassword %}
-[instance.rpc.ssl.clientAuth]: {% sprop instance.rpc.ssl.clientAuth %}
diff --git a/_docs-2-0/administration/tracing.md
b/_docs-2-0/administration/tracing.md
index b49a9f8..a24f831 100644
--- a/_docs-2-0/administration/tracing.md
+++ b/_docs-2-0/administration/tracing.md
@@ -67,7 +67,7 @@ trace.span.receiver. when set in the Accumulo configuration.
tracer.queue.size - max queue size (default 5000)
tracer.span.min.ms - minimum span length to store (in ms, default 1)
-To configure an Accumulo client for tracing, set
[trace.span.receivers][receivers-client] and
[trace.zookeeper.path][zk-path-client]
+To configure an Accumulo client for tracing, set {% plink -c
trace.span.receivers %} and {% plink -c trace.zookeeper.path %}
in `accumulo-client.properties`. Also, any [trace.span.receiver.*] properties
set in `accumulo-site.xml` should be set in
`accumulo-client.properties`.
@@ -343,12 +343,10 @@ Time Start Service@Location Name
[config-mgmt]: {{ page.docs_baseurl }}/administration/configuration-management
[Zipkin]: https://github.com/openzipkin/zipkin
-[trace.user]: {% sprop trace.user %}
-[trace.token.property.password]: {% sprop trace.token.property.password %}
-[trace.port.client]: {% sprop trace.port.client %}
-[trace.table]: {% sprop trace.table %}
-[trace.zookeeper.path]: {% sprop trace.zookeeper.path %}
-[trace.span.receivers]: {% sprop trace.span.receivers %}
-[trace.span.receiver.*]: {% sprop trace.span.receiver.prefix %}
-[zk-path-client]: {{ page.docs_baseurl
}}/development/client-properties#trace_zookeeper_path
-[receivers-client]: {{ page.docs_baseurl
}}/development/client-properties#trace_span_receivers
+[trace.user]: {% purl trace.user %}
+[trace.token.property.password]: {% purl trace.token.property.password %}
+[trace.port.client]: {% purl trace.port.client %}
+[trace.table]: {% purl trace.table %}
+[trace.zookeeper.path]: {% purl trace.zookeeper.path %}
+[trace.span.receivers]: {% purl trace.span.receivers %}
+[trace.span.receiver.*]: {% purl trace.span.receiver.prefix %}
diff --git a/_docs-2-0/development/security.md
b/_docs-2-0/development/security.md
index cd94c3b..247c150 100644
--- a/_docs-2-0/development/security.md
+++ b/_docs-2-0/development/security.md
@@ -170,7 +170,7 @@ Authorizations mechanism.
Typically, the query services layer sits between Accumulo and user
workstations.
-[shell]: {{ page.docs_baseurl }}/getting-started/shell
+[shell]: {% durl getting-started/shell %}
[Key]: {% jurl org.apache.accumulo.core.data.Key %}
[Value]: {% jurl org.apache.accumulo.core.data.Value %}
[Mutation]: {% jurl org.apache.accumulo.core.data.Mutation %}
diff --git a/_docs-2-0/development/summaries.md
b/_docs-2-0/development/summaries.md
index 4629c1a..d59a650 100644
--- a/_docs-2-0/development/summaries.md
+++ b/_docs-2-0/development/summaries.md
@@ -48,12 +48,12 @@ information.
The following tablet server and table properties configure summarization.
-* [tserver.cache.summary.size]({% sprop tserver.cache.summary.size %})
-* [tserver.summary.partition.threads]({% sprop
tserver.summary.partition.threads %})
-* [tserver.summary.remote.threads]({% sprop tserver.summary.remote.threads %})
-* [tserver.summary.retrieval.threads]({% sprop
tserver.summary.retreival.threads %})
-* [table.summarizer.*]({% sprop table.summarizer.prefix %})
-* [table.file.summary.maxSize]({% sprop table.file.summary.maxSize %})
+* {% plink tserver.cache.summary.size %}
+* {% plink tserver.summary.partition.threads %}
+* {% plink tserver.summary.remote.threads %}
+* {% plink tserver.summary.retrieval.threads %}
+* [table.summarizer.*]({% purl table.summarizer.prefix %})
+* {% plink table.file.summary.maxSize %}
## Permissions
diff --git a/_docs-2-0/getting-started/clients.md
b/_docs-2-0/getting-started/clients.md
index bcbbba9..e6684ae 100644
--- a/_docs-2-0/getting-started/clients.md
+++ b/_docs-2-0/getting-started/clients.md
@@ -345,13 +345,13 @@ This page covers Accumulo client basics. Below are links
to additional document
* [MapReduce] - Documentation for reading and writing to Accumulo using
MapReduce.
[Connector]: {% jurl org.apache.accumulo.core.client.Connector %}
-[client-props]: {% doc development/client-properties %}
-[auth.type]: {% cprop auth.type %}
-[auth.principal]: {% cprop auth.principal %}
-[auth.token]: {% cprop auth.token %}
-[instance.name]: {% cprop instance.name %}
-[instance.zookeepers]: {% cprop instance.zookeepers %}
-[batch.writer.durability]: {% cprop batch.writer.durability %}
+[client-props]: {% durl development/client-properties %}
+[auth.type]: {% purl -c auth.type %}
+[auth.principal]: {% purl -c auth.principal %}
+[auth.token]: {% purl -c auth.token %}
+[instance.name]: {% purl -c instance.name %}
+[instance.zookeepers]: {% purl -c instance.zookeepers %}
+[batch.writer.durability]: {% purl -c batch.writer.durability %}
[PasswordToken]: {% jurl
org.apache.accumulo.core.client.security.tokens.PasswordToken %}
[AuthenticationToken]: {% jurl
org.apache.accumulo.core.client.security.tokens.AuthenticationToken %}
[CredentialProviderToken]: {% jurl
org.apache.accumulo.core.client.security.tokens.CredentialProviderToken %}
@@ -364,9 +364,9 @@ This page covers Accumulo client basics. Below are links
to additional document
[BatchScanner]: {% jurl org.apache.accumulo.core.client.BatchScanner %}
[Range]: {% jurl org.apache.accumulo.core.data.Range %}
[WholeRowIterator]: {% jurl
org.apache.accumulo.core.iterators.user.WholeRowIterator %}
-[Iterators]: {% doc development/iterators %}
-[Proxy]: {% doc development/proxy %}
-[MapReduce]: {% doc development/mapreduce %}
+[Iterators]: {% durl development/iterators %}
+[Proxy]: {% durl development/proxy %}
+[MapReduce]: {% durl development/mapreduce %}
[mapred-example]:
https://github.com/apache/accumulo-examples/blob/master/docs/mapred.md
[batch]: https://github.com/apache/accumulo-examples/blob/master/docs/batch.md
[reservations]:
https://github.com/apache/accumulo-examples/blob/master/docs/reservations.md
diff --git a/_docs-2-0/getting-started/design.md
b/_docs-2-0/getting-started/design.md
index f1ba58a..4d758b7 100644
--- a/_docs-2-0/getting-started/design.md
+++ b/_docs-2-0/getting-started/design.md
@@ -182,9 +182,9 @@ TabletServer failures are noted on the Master's monitor
page, accessible via

[BigTable paper]: https://research.google.com/archive/bigtable.html
-[monitor]: {{page.docs_baseurl}}/administration/monitoring-metrics#monitoring
-[tracing]: {{page.docs_baseurl}}/administration/tracing
-[clients]: {{page.docs_baseurl}}/getting-started/clients
-[merging]:
{{page.docs_baseurl}}/getting-started/table_configuration#merging-tablets
-[compaction]:
{{page.docs_baseurl}}/getting-started/table_configuration#compaction
-[caching]: {{page.docs_baseurl}}/administration/caching
+[monitor]: {% durl administration/monitoring-metrics#monitoring %}
+[tracing]: {% durl administration/tracing %}
+[clients]: {% durl getting-started/clients %}
+[merging]: {% durl getting-started/table_configuration#merging-tablets %}
+[compaction]: {% durl getting-started/table_configuration#compaction %}
+[caching]: {% durl administration/caching %}
diff --git a/_docs-2-0/getting-started/table_configuration.md
b/_docs-2-0/getting-started/table_configuration.md
index b59b2ce..7d151a8 100644
--- a/_docs-2-0/getting-started/table_configuration.md
+++ b/_docs-2-0/getting-started/table_configuration.md
@@ -713,14 +713,14 @@ preserved.
[combiner]: {% jurl org.apache.accumulo.core.iterators.Combiner %}
[combiner-example]:
https://github.com/apache/accumulo-examples/blob/master/docs/combiner.md
[filter]: {% jurl org.apache.accumulo.core.iterators.Filter %}
-[table.majc.compaction.strategy]: {{
page.docs_baseurl}}/administration/properties#table_majc_compaction_strategy
+[table.majc.compaction.strategy]: {% purl table.majc.compaction.strategy %}
[config-properties]: {{ page.docs_baseurl}}/administration/properties
[Scanner]: {% jurl org.apache.accumulo.core.client.Scanner %}
[BatchScanner]: {% jurl org.apache.accumulo.core.client.BatchScanner %}
-[Caching]: {{ page.docs_baseurl }}/administration/caching
-[table.compaction.major.ratio]: {{
page.docs_baseurl}}/administration/properties#table_compaction_major_ratio
-[tserver.compaction.major.concurrent.max]: {{
page.docs_baseurl}}/administration/properties#tserver_compaction_major_concurrent_max
-[tserver.compaction.minor.concurrent.max]: {{
page.docs_baseurl}}/administration/properties#tserver_compaction_minor_concurrent_max
-[table.file.max]: {{
page.docs_baseurl}}/administration/properties#table_file_max
-[table.bloom.enabled]: {{
page.docs_baseurl}}/administration/properties#table_bloom_enabled
-[table.file.compress.type]: {{
page.docs_baseurl}}/administration/properties#table_file_compress_type
+[Caching]: {% durl administration/caching %}
+[table.compaction.major.ratio]: {% purl table.compaction.major.ratio %}
+[tserver.compaction.major.concurrent.max]: {% purl
tserver.compaction.major.concurrent.max %}
+[tserver.compaction.minor.concurrent.max]: {% purl
tserver.compaction.minor.concurrent.max %}
+[table.file.max]: {% purl table.file.max %}
+[table.bloom.enabled]: {% purl table.bloom.enabled %}
+[table.file.compress.type]: {% purl table.file.compress.type %}
diff --git a/_docs-2-0/troubleshooting/advanced.md
b/_docs-2-0/troubleshooting/advanced.md
index 474a942..c77b1a1 100644
--- a/_docs-2-0/troubleshooting/advanced.md
+++ b/_docs-2-0/troubleshooting/advanced.md
@@ -362,4 +362,4 @@ is struggling to keep up with ingest vs the compaction
strategy which reduces th
Write Ahead Logs stay open until they hit the size threshold, which could be
many hours or days in some cases. These open files will prevent a DN from
finishing its decommissioning process (HDFS-3599) in some versions of Hadoop 2.
If you stop the DN, then the WALog file will not be closed and you could lose
data. To work around this issue, we now close WALogs on a time period specified
by the property `tserver.walog.max.age` with a default period of 24 hours.
-[metadata]: {{ page.docs_baseurl }}/troubleshooting/system-metadata-tables
+[metadata]: {% durl troubleshooting/system-metadata-tables %}
diff --git a/_docs-2-0/troubleshooting/basic.md
b/_docs-2-0/troubleshooting/basic.md
index 8ab4a30..131e288 100644
--- a/_docs-2-0/troubleshooting/basic.md
+++ b/_docs-2-0/troubleshooting/basic.md
@@ -231,5 +231,5 @@ Node count: 22524
Check zookeeper status, verify that it has a quorum, and has not exceeded
maxClientCnxns.
-[rfile-info]: {{ page.docs_baseurl }}/troubleshooting/tools#RFileInfo
-[native-maps]: {{ page.docs_baseurl
}}/administration/in-depth-install#native-map
+[rfile-info]: {% durl troubleshooting/tools#RFileInfo %}
+[native-maps]: {% durl administration/in-depth-install#native-map %}
diff --git a/_docs-2-0/troubleshooting/performance.md
b/_docs-2-0/troubleshooting/performance.md
index f6dd705..a17010f 100644
--- a/_docs-2-0/troubleshooting/performance.md
+++ b/_docs-2-0/troubleshooting/performance.md
@@ -15,10 +15,10 @@ Accumulo can be tuned to improve read and write performance.
1. Decrease the [major compaction ratio][compaction] of a table to decrease
the number of
files per tablet. Less files reduces the latency of reads.
-1. Decrease the size of [data blocks in RFiles][rfile] by lowering
[table.file.compress.blocksize] which can result
+1. Decrease the size of [data blocks in RFiles][rfile] by lowering {% plink
table.file.compress.blocksize %} which can result
in better random seek performance. However, this can increase the size of
indexes in the RFile. If the indexes
are too large to fit in cache, this can hinder performance. Also, as the
index size increases the depth of the
- index tree in each file may increase. Increasing
[table.file.compress.blocksize.index] can reduce the depth of
+ index tree in each file may increase. Increasing {% plink
table.file.compress.blocksize.index %} can reduce the depth of
the tree.
## Write performance
@@ -35,18 +35,15 @@ Accumulo can be tuned to improve read and write performance.
1. On large Accumulo clusters, use [multiple HDFS volumes][multivolume] to
increase write performance.
-1. Change the compression format used by [blocks in RFiles][rfile] by setting
[table.file.compress.type] to
+1. Change the compression format used by [blocks in RFiles][rfile] by setting
{% plink table.file.compress.type %} to
`snappy`. This increases write speed at the expense of using more disk
space.
-[caching]: {{ page.docs_baseurl }}/administration/caching
-[bloom-filters]: {{ page.docs_baseurl
}}/getting-started/table_configuration#bloom-filters
-[compaction]: {{ page.docs_baseurl
}}/getting-started/table_configuration#compaction
-[rfile]: {{ page.docs_baseurl }}/getting-started/design#rfile
-[native-maps]: {{ page.docs_baseurl
}}/administration/in-depth-install#native-map
-[split]: {{ page.docs_baseurl
}}//getting-started/table_configuration#pre-splitting-tables
-[multi-client]: {{ page.docs_baseurl
}}/development/high_speed_ingest#multiple-ingest-clients
-[bulk]: {{ page.docs_baseurl }}/development/high_speed_ingest#bulk-ingest
-[multivolume]: {{ page.docs_baseurl }}/administration/multivolume
-[table.file.compress.blocksize]: {{ page.docs_baseurl
}}/administration/properties#table_file_compress_blocksize
-[table.file.compress.blocksize.index]: {{ page.docs_baseurl
}}/administration/properties#table_file_compress_blocksize_index
-[table.file.compress.type]: {{ page.docs_baseurl
}}/administration/properties#table_file_compress_type
+[caching]: {% durl administration/caching %}
+[bloom-filters]: {% durl getting-started/table_configuration#bloom-filters %}
+[compaction]: {% durl getting-started/table_configuration#compaction %}
+[rfile]: {% durl getting-started/design#rfile %}
+[native-maps]: {% durl administration/in-depth-install#native-map %}
+[split]: {% durl getting-started/table_configuration#pre-splitting-tables %}
+[multi-client]: {% durl development/high_speed_ingest#multiple-ingest-clients
%}
+[bulk]: {% durl development/high_speed_ingest#bulk-ingest %}
+[multivolume]: {% durl administration/multivolume %}
diff --git a/_plugins/links.rb b/_plugins/links.rb
index 1d622c6..afb2f1a 100755
--- a/_plugins/links.rb
+++ b/_plugins/links.rb
@@ -15,8 +15,19 @@ def convert_package(package)
return retval
end
-def render_link(context, text, short, url_only)
+def render_javadoc(context, text, url_only)
clz = text.strip
+ short = true
+ if not url_only
+ args = text.strip.split(' ', 2)
+ print args
+ if args[0] == '-f'
+ short = false
+ clz = args[1]
+ elsif args[0] == '-c'
+ clz = args[1]
+ end
+ end
base = context.registers[:site].config['javadoc_base']
v = context.environments.first["page"]["javadoc_version"]
if v.nil?
@@ -57,89 +68,114 @@ def render_link(context, text, short, url_only)
return r
end
-class JavadocFullTag < Liquid::Tag
+class JavadocLinkTag < Liquid::Tag
def initialize(tag_name, text, tokens)
super
@text = text
end
def render(context)
- return render_link(context, @text, false, false)
+ return render_javadoc(context, @text, false)
end
end
-class JavadocClassTag < Liquid::Tag
+class JavadocUrlTag < Liquid::Tag
def initialize(tag_name, text, tokens)
super
@text = text
end
def render(context)
- return render_link(context, @text, true, false)
+ return render_javadoc(context, @text, true)
end
end
-class JavadocUrlTag < Liquid::Tag
+def render_prop(context, text, link)
+ args = text.split(' ')
+ type = 'server'
+ prop = args[0]
+ if args[0] == '-c'
+ type = 'client'
+ prop = args[1]
+ elsif args[0] == '-s'
+ type = 'server'
+ prop = args[1]
+ end
+ base = context.environments.first["page"]["docs_baseurl"]
+ if base.nil?
+ base = context.registers[:site].config['docs_baseurl']
+ end
+ prop_enc = prop.gsub('.', '_')
+ url = "#{base}/administration/properties##{prop_enc}"
+ if type == 'client'
+ url = "#{base}/development/client-properties##{prop_enc}"
+ end
+ if link
+ return "[#{prop}](#{url})"
+ end
+ return url
+end
+
+class PropertyUrlTag < Liquid::Tag
def initialize(tag_name, text, tokens)
super
@text = text
end
def render(context)
- return render_link(context, @text, false, true)
+ return render_prop(context, @text, false)
end
end
-class ServerPropertyTag < Liquid::Tag
+class PropertyLinkTag < Liquid::Tag
def initialize(tag_name, text, tokens)
super
@text = text
end
def render(context)
- base = context.environments.first["page"]["docs_baseurl"]
- if base.nil?
- base = context.registers[:site].config['docs_baseurl']
- end
- prop = @text.gsub('.', '_')
- return "#{base}/administration/properties##{prop}"
+ return render_prop(context, @text, true)
end
end
-class ClientPropertyTag < Liquid::Tag
+def render_doc(context, text, link)
+ base = context.environments.first["page"]["docs_baseurl"]
+ if base.nil?
+ base = context.registers[:site].config['docs_baseurl']
+ end
+ url = "#{base}/#{@text}"
+ if not link
+ return url
+ end
+ page = @text.split('/').last
+ return "[#{page}](#{url})"
+end
+
+class DocLinkTag < Liquid::Tag
def initialize(tag_name, text, tokens)
super
@text = text
end
def render(context)
- base = context.environments.first["page"]["docs_baseurl"]
- if base.nil?
- base = context.registers[:site].config['docs_baseurl']
- end
- prop = @text.gsub('.', '_')
- return "#{base}/development/client-properties##{prop}"
+ return render_doc(context, @text, true)
end
end
-class DocTag < Liquid::Tag
+class DocUrlTag < Liquid::Tag
def initialize(tag_name, text, tokens)
super
@text = text
end
def render(context)
- base = context.environments.first["page"]["docs_baseurl"]
- if base.nil?
- base = context.registers[:site].config['docs_baseurl']
- end
- return "#{base}/#{@text}"
+ return render_doc(context, @text, false)
end
end
-Liquid::Template.register_tag('jfull', JavadocFullTag)
-Liquid::Template.register_tag('jclass', JavadocClassTag)
+Liquid::Template.register_tag('jlink', JavadocLinkTag)
Liquid::Template.register_tag('jurl', JavadocUrlTag)
-Liquid::Template.register_tag('sprop', ServerPropertyTag)
-Liquid::Template.register_tag('cprop', ClientPropertyTag)
-Liquid::Template.register_tag('doc', DocTag)
+Liquid::Template.register_tag('plink', PropertyLinkTag)
+Liquid::Template.register_tag('purl', PropertyUrlTag)
+Liquid::Template.register_tag('dlink', DocLinkTag)
+Liquid::Template.register_tag('durl', DocUrlTag)