Skip to content

Commit 9887406

Browse files
authored
Merge pull request #278 from HarperDB/link-fix
Fixing remaining links
2 parents 0a87980 + cc43a4e commit 9887406

File tree

27 files changed

+95
-95
lines changed

27 files changed

+95
-95
lines changed

docs/developers/operations-api/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ title: Operations API
44

55
# Operations API
66

7-
The operations API provides a full set of capabilities for configuring, deploying, administering, and controlling Harper. To send operations to the operations API, you send a POST request to the operations API endpoint, which [defaults to port 9925](../../deployments/configuration#operationsapi), on the root path, where the body is the operations object. These requests need to authenticated, which can be done with [basic auth](./security#basic-auth) or [JWT authentication](./security#jwt-auth). For example, a request to create a table would be performed as:
7+
The operations API provides a full set of capabilities for configuring, deploying, administering, and controlling Harper. To send operations to the operations API, you send a POST request to the operations API endpoint, which [defaults to port 9925](../deployments/configuration#operationsapi), on the root path, where the body is the operations object. These requests need to authenticated, which can be done with [basic auth](./security#basic-auth) or [JWT authentication](./security#jwt-auth). For example, a request to create a table would be performed as:
88

99
```http
1010
POST https://my-harperdb-server:9925/

docs/developers/replication/index.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ Harper replication uses a peer-to-peer model where every node in your cluster ca
1212

1313
### Replication Configuration
1414

15-
To connect your nodes, you need to provide hostnames or URLs for the nodes to connect to each other. This can be done via configuration or through operations. To configure replication, you can specify connection information the `replication` section of the [harperdb-config.yaml](../../deployments/configuration). Here, you can specify the host name of the current node, and routes to connect to other nodes, for example:
15+
To connect your nodes, you need to provide hostnames or URLs for the nodes to connect to each other. This can be done via configuration or through operations. To configure replication, you can specify connection information the `replication` section of the [harperdb-config.yaml](../deployments/configuration). Here, you can specify the host name of the current node, and routes to connect to other nodes, for example:
1616

1717
```yaml
1818
replication:
@@ -77,7 +77,7 @@ replication:
7777

7878
Harper supports the highest levels of security through public key infrastructure based security and authorization. Depending on your security configuration, you can configure Harper in several different ways to build a connected cluster.
7979

80-
When using certificate-based authentication, Harper automatically performs OCSP (Online Certificate Status Protocol) verification to check if certificates have been revoked. This ensures that compromised certificates cannot be used for replication connections. Certificate verification settings follow the same configuration as HTTP mTLS connections (see [certificate verification configuration](../../deployments/configuration.md#http)).
80+
When using certificate-based authentication, Harper automatically performs OCSP (Online Certificate Status Protocol) verification to check if certificates have been revoked. This ensures that compromised certificates cannot be used for replication connections. Certificate verification settings follow the same configuration as HTTP mTLS connections (see [certificate verification configuration](../deployments/configuration.md#http)).
8181

8282
#### Provide your own certificates
8383

@@ -189,7 +189,7 @@ Nodes can be removed from the cluster using the [`remove_node` operation](./oper
189189

190190
#### Insecure Connection IP-based Authentication
191191

192-
You can completely disable secure connections and use IP addresses to authenticate nodes with each other. This can be useful for development and testing, or within a secure private network, but should never be used for production with publicly accessible servers. To disable secure connections, simply configure replication within an insecure port, either by [configuring the operations API](../../deployments/configuration) to run on an insecure port or replication to run on an insecure port. And then set up IP-based routes to connect to other nodes:
192+
You can completely disable secure connections and use IP addresses to authenticate nodes with each other. This can be useful for development and testing, or within a secure private network, but should never be used for production with publicly accessible servers. To disable secure connections, simply configure replication within an insecure port, either by [configuring the operations API](../deployments/configuration) to run on an insecure port or replication to run on an insecure port. And then set up IP-based routes to connect to other nodes:
193193

194194
```yaml
195195
replication:

docs/technical-details/reference/components/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ title: Components
1616
1717
All together, the support for implementing a feature is the extension, and the actual implementation of the feature is the application.
1818

19-
For more information on the differences between applications and extensions, refer to the beginning of the [Applications](../../../developers/applications/) guide documentation section.
19+
For more information on the differences between applications and extensions, refer to the beginning of the [Applications](../../developers/applications/) guide documentation section.
2020

2121
This technical reference section has detailed information on various component systems:
2222

docs/technical-details/reference/resources/index.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ This object provides extension points for extension components that wish to impl
102102

103103
### `transaction`
104104

105-
This provides a function for starting transactions. See the [transactions documentation](../../technical-details/transactions) for more information.
105+
This provides a function for starting transactions. See the [transactions documentation](./transactions) for more information.
106106

107107
### `contentTypes`
108108

@@ -272,7 +272,7 @@ When a resource is accessed as a data source:
272272
273273
### `operation(operationObject: Object, authorize?: boolean): Promise<any>`
274274
275-
This method is available on tables and will execute a Harper operation, using the current table as the target of the operation (the `table` and `database` do not need to be specified). See the [operations API](../../../developers/operations-api/) for available operations that can be performed. You can set the second argument to `true` if you want the current user to be checked for authorization for the operation (if `true`, will throw an error if they are not authorized).
275+
This method is available on tables and will execute a Harper operation, using the current table as the target of the operation (the `table` and `database` do not need to be specified). See the [operations API](../../developers/operations-api/) for available operations that can be performed. You can set the second argument to `true` if you want the current user to be checked for authorization for the operation (if `true`, will throw an error if they are not authorized).
276276
277277
### `allowStaleWhileRevalidate(entry: { version: number, localTime: number, expiresAt: number, value: object }, id): boolean`
278278
@@ -373,7 +373,7 @@ type MyTable @table {
373373
}
374374
```
375375
376-
See the [schema documentation](../../../developers/applications/defining-schemas) for more information on computed attributes.
376+
See the [schema documentation](../../developers/applications/defining-schemas) for more information on computed attributes.
377377
378378
### `primaryKey`
379379
@@ -455,7 +455,7 @@ export class BlogPost extends tables.BlogPost {
455455
}
456456
```
457457
458-
Please see the [transaction documentation](../../technical-details/transactions) for more information on how transactions work in Harper.
458+
Please see the [transaction documentation](./transactions) for more information on how transactions work in Harper.
459459
460460
### Query
461461
@@ -490,7 +490,7 @@ Table.search({
490490
491491
**Chained Attributes/Properties**
492492
493-
Chained attribute/property references can be used to search on properties within related records that are referenced by [relationship properties](../../../developers/applications/defining-schemas) (in addition to the [schema documentation](../../../developers/applications/defining-schemas), see the [REST documentation](../../../developers/rest) for more of overview of relationships and querying). Chained property references are specified with an array, with each entry in the array being a property name for successive property references. For example, if a relationship property called `brand` has been defined that references a `Brand` table, we could search products by brand name:
493+
Chained attribute/property references can be used to search on properties within related records that are referenced by [relationship properties](../../developers/applications/defining-schemas) (in addition to the [schema documentation](../../developers/applications/defining-schemas), see the [REST documentation](../../developers/rest) for more of overview of relationships and querying). Chained property references are specified with an array, with each entry in the array being a property name for successive property references. For example, if a relationship property called `brand` has been defined that references a `Brand` table, we could search products by brand name:
494494
495495
```javascript
496496
Product.search({ conditions: [{ attribute: ['brand', 'name'], value: 'Harper' }] });

release-notes/v4-tucker/4.1.0.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,19 +8,19 @@ HarperDB 4.1 introduces the ability to use worker threads for concurrently handl
88

99
This means debugging will be much easier for custom functions. If you install/run HarperDB locally, most modern IDEs like WebStorm and VSCode support worker thread debugging, so you can start HarperDB in your IDE, and set breakpoints in your custom functions and debug them.
1010

11-
The associated routing functionality now includes session affinity support. This can be used to consistently route users to the same thread which can improve caching locality, performance, and fairness. This can be enabled in with the [`http.sessionAffinity` option in your configuration](../../../deployments/configuration#http).
11+
The associated routing functionality now includes session affinity support. This can be used to consistently route users to the same thread which can improve caching locality, performance, and fairness. This can be enabled in with the [`http.sessionAffinity` option in your configuration](/docs/4.1/configuration#session-affinity).
1212

1313
HarperDB 4.1's NoSQL query handling has been revamped to consistently use iterators, which provide an extremely memory efficient mechanism for directly streaming query results to the network _as_ the query results are computed. This results in faster Time to First Byte (TTFB) (only the first record/value in a query needs to be computed before data can start to be sent), and less memory usage during querying (the entire query result does not need to be stored in memory). These iterators are also available in query results for custom functions and can provide means for custom function code to iteratively access data from the database without loading entire results. This should be a completely transparent upgrade, all HTTP APIs function the same, with the one exception that custom functions need to be aware that they can't access query results by `[index]` (they should use array methods or for-in loops to handle query results).
1414

15-
4.1 includes configuration options for specifying the location of database storage files. This allows you to specifically locate database directories and files on different volumes for better flexibility and utilization of disks and storage volumes. See the [storage configuration](../../../../deployments/configuration#storage) and [schemas configuration](../../../../deployments/configuration#schemas) for information on how to configure these locations.
15+
4.1 includes configuration options for specifying the location of database storage files. This allows you to specifically locate database directories and files on different volumes for better flexibility and utilization of disks and storage volumes. See the [storage configuration](/docs/4.1/configuration#storage) and [schemas configuration](/docs/4.1/configuration#schemas) for information on how to configure these locations.
1616

17-
Logging has been revamped and condensed into one `hdb.log` file. See [logging](../../../administration/logging/) for more information.
17+
Logging has been revamped and condensed into one `hdb.log` file. See [logging](/docs/administration/logging/) for more information.
1818

1919
A new operation called `cluster_network` was added, this operation will ping the cluster and return a list of enmeshed nodes.
2020

21-
Custom Functions will no longer automatically load static file routes, instead the `@fastify/static` plugin will need to be registered with the Custom Function server. See [Host A Static Web UI-static](https://docs.harperdb.io/docs/v/4.1/custom-functions/host-static).
21+
Custom Functions will no longer automatically load static file routes, instead the `@fastify/static` plugin will need to be registered with the Custom Function server. See [Host A Static Web UI-static](/docs/4.1/custom-functions/host-static).
2222

23-
Updates to S3 import and export mean that these operations now require the bucket `region` in the request. Also, if referencing a nested object it should be done in the `key` parameter. See examples [here](../../../developers/operations-api/bulk-operations#import-from-s3).
23+
Updates to S3 import and export mean that these operations now require the bucket `region` in the request. Also, if referencing a nested object it should be done in the `key` parameter. See examples [here](https://api.harperdb.io/#aa74bbdf-668c-4536-80f1-b91bb13e5024).
2424

2525
Due to the AWS SDK v2 reaching end of life support we have updated to v3. This has caused some breaking changes in our operations `import_from_s3` and `export_to_s3`:
2626

release-notes/v4-tucker/4.1.1.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ title: 4.1.1
66

77
06/16/2023
88

9-
- HarperDB uses improved logic for determining default heap limits and thread counts. When running in a restricted container and on NodeJS 18.15+, HarperDB will use the constrained memory limit to determine heap limits for each thread. In more memory constrained servers with many CPU cores, a reduced default thread count will be used to ensure that excessive memory is not used by many workers. You may still define your own thread count (with `http`/`threads`) in the [configuration](../../../deployments/configuration).
10-
- An option has been added for [disabling the republishing NATS messages](../../../deployments/configuration), which can provide improved replication performance in a fully connected network.
9+
- HarperDB uses improved logic for determining default heap limits and thread counts. When running in a restricted container and on NodeJS 18.15+, HarperDB will use the constrained memory limit to determine heap limits for each thread. In more memory constrained servers with many CPU cores, a reduced default thread count will be used to ensure that excessive memory is not used by many workers. You may still define your own thread count (with `http`/`threads`) in the [configuration](/docs/deployments/configuration).
10+
- An option has been added for [disabling the republishing NATS messages](/docs/deployments/configuration), which can provide improved replication performance in a fully connected network.
1111
- Improvements to our OpenShift container.
1212
- Dependency security updates.
1313
- **Bug Fixes**

0 commit comments

Comments
 (0)