Skip to content

Commit

Permalink
Merge branch 'v3.4.1' into merge-3.4.1 (#2032)
Browse files Browse the repository at this point in the history
  • Loading branch information
cooper-lzy committed Mar 27, 2023
1 parent 3a7dae0 commit 6b935eb
Show file tree
Hide file tree
Showing 29 changed files with 326 additions and 83 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -247,16 +247,16 @@ When a transfer leadership command is committed, the leader will abandon its lea

To avoid split-brain, when members in a Raft Group change, an intermediate state is required. In such a state, the quorum of the old group and new group always have an overlap. Thus it prevents the old or new group from making decisions unilaterally. To make it even simpler, in his doctoral thesis Diego Ongaro suggests adding or removing a peer once to ensure the overlap between the quorum of the new group and the old group. NebulaGraph also uses this approach, except that the way to add or remove a member is different. For details, please refer to addPeer/removePeer in the Raft Part class.

<!-- open after fully tested
{{ent.ent_begin}}
<!-- open after fully tested, add macro since it is an enterprise feature
## Cache
The cache management of RocksDB can not cache vertices or edges on demand. NebulaGraph implements its own cache management for Storage, allowing you to set the storage cache size, content, etc. For more information, see [Storage cache configurations](../../5.configurations-and-logs/1.configurations/4.storage-config.md).
You can query the cache stats through the cURL command `curl "http://[storaged IP]:[http port]/cache?stats"`.
{{ent.ent_end}} -->
-->

## Differences with HDFS

Expand Down
33 changes: 33 additions & 0 deletions docs-2.0/20.appendix/0.FAQ.md
Original file line number Diff line number Diff line change
Expand Up @@ -538,6 +538,39 @@ If you have customized the configuration files and changed the predefined ports,

For those eco-tools, see the corresponding document.

The following are the default ports used by NebulaGraph core and peripheral tools.

| No. | Product / Service | Type | Default | Description |
| :--- | :--------------------- | :--- | :---------------------------- | :----------------------------------------------------------- |
| 1 | NebulaGraph | TCP | 9669 | Graph service RPC daemon listening port (commonly used for client connections to the Graph service). |
| 2 | NebulaGraph | TCP | 19669 | Graph service HTTP port. |
| 3 | NebulaGraph | TCP | 19670 | Graph service HTTP/2 port. (Deprecated after version 3.x) |
| 4 | NebulaGraph | TCP | 9559 | Meta service RPC daemon listening port. (Commonly used by Graph and Storage services for querying and updating metadata in the graph database). |
| 5 | NebulaGraph | TCP | 9560 | Raft communication port between Meta services. |
| 6 | NebulaGraph | TCP | 19559 | Meta service HTTP port. |
| 7 | NebulaGraph | TCP | 19560 | Meta service HTTP/2 port. (Deprecated after version 3.x) |
| 8 | NebulaGraph | TCP | 9777 | Drainer service port in Storage services (exposed only in Enterprise Edition clusters). |
| 9 | NebulaGraph | TCP | 9778 | Admin service port in Storage services. |
| 10 | NebulaGraph | TCP | 9779 | Storage service RPC daemon listening port. (Commonly used by Graph services for data storage-related operations, such as reading, writing, or deleting data). |
| 11 | NebulaGraph | TCP | 9780 | Raft communication port between Storage services. |
| 12 | NebulaGraph | TCP | 19779 | Storage service HTTP port. |
| 13 | NebulaGraph | TCP | 19780 | Storage service HTTP/2 port. (Deprecated after version 3.x) |
| 14 | NebulaGraph | TCP | 8888 | Backup and restore Agent service port. The Agent is a daemon running on each machine in the cluster, responsible for starting and stopping NebulaGraph services and uploading and downloading backup files. |
| 15 | NebulaGraph | TCP | 9789, 9790, and 9788 | Full-text index Raft Listener port, which reads data from Storage services and writes it to the Elasticsearch cluster.<br/>Also the port for Storage Listener in inter-cluster data synchronization, used for synchronizing Storage data from the primary cluster. Ports 9790 and 9788 are generated by adding and subtracting one from port 9789. |
| 16 | NebulaGraph | TCP | 9200 | NebulaGraph uses this port for HTTP communication with Elasticsearch to perform full-text search queries and manage full-text indexes. |
| 17 | NebulaGraph | TCP | 9569, 9570, and 9568| Meta Listener port in inter-cluster data synchronization, used for synchronizing Meta data from the primary cluster. Ports 9570 and 9568 are generated by adding and subtracting one from port 9569. |
| 18 | NebulaGraph | TCP | 9889, 9890, and 9888 |Drainer service port in inter-cluster data synchronization, used for synchronizing Storage and Meta data to the primary cluster. Ports 9890 and 9888 are generated by adding and subtracting one from port 9889. |
| 19 | NebulaGraph Studio | TCP | 7001 | Studio web service port. |
| 20 | NebulaGraph Dashboard | TCP | 8090 | Nebula HTTP Gateway dependency service port. Provides an HTTP interface for cluster services to interact with the NebulaGraph database using nGQL statements. |
| 21 | NebulaGraph Dashboard | TCP | 9200 | Nebula Stats Exporter dependency service port. Collects cluster performance metrics, including service IP addresses, versions, and monitoring metrics (such as query count, query latency, heartbeat latency, etc.). |
| 22 | NebulaGraph Dashboard | TCP | 9100 | Node Exporter dependency service port. Collects resource information for machines in the cluster, including CPU, memory, load, disk, and traffic. |
| 23 | NebulaGraph Dashboard | TCP | 9090 | Prometheus service port. Time-series database for storing monitoring data. |
| 24 | NebulaGraph Dashboard | TCP | 7003 | Dashboard Community Edition web service port. |
| 25 | NebulaGraph Dashboard | TCP | 7005 | Dashboard Enterprise Edition web service port. |
| 26 | NebulaGraph Dashboard | TCP | 9093 | Alertmanager service port. Receives alerts from Prometheus and sends alert notifications to Dashboard. |
| 27 | NebulaGraph Explorer | TCP | 7002 | Explorer web service port. |


### "How to test whether a port is open or closed?"

You can use telnet as follows to check for port status.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
# NebulaGraph Dashboard Enterprise Edition release notes

## Enterprise Edition 3.4.2

- Enhancement

- Support viewing the data backup and restoration progress on the **Backup&Restore** page.
- The installation package for NebulaGraph Enterprise v3.4.1 is built in.

## Enterprise Edition 3.4.1

- Bugfix
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

## Bugfix

- Fix the crash caused by encoding parameter expressions to the storage layer for execution.
- Fix the crash caused by encoding the parameter expression and evaluating it in the storage.

- Fix some crashes for the list function.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ DISTINCT
DOUBLE
DOWNLOAD
DROP
DURATION
EDGE
EDGES
EXISTS
Expand Down
16 changes: 9 additions & 7 deletions docs-2.0/3.ngql-guide/10.tag-statements/3.alter-tag.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,6 @@

- The property name must be unique in a tag. If you add a property with the same name as an existing property or a dropped property, the operation fails.

- Only the length of a `FIXED_STRING` or an `INT` can be increased.

- Only the data type conversions from FIXED_STRING to STRING and from FLOAT to DOUBLE are allowed.


## Syntax

Expand All @@ -38,16 +34,22 @@ ttl_definition:

- When a property value is set to `NOT NULL` using `ADD` or `CHANGE`, a default value must be specified for the property, that is, the value of `DEFAULT` must be specified.

- When using `CHANGE` to modify the data type of a property:

- Only the length of a `FIXED_STRING` or an `INT` can be increased. The length of a `STRING` or an `INT` cannot be decreased.

- Only the data type conversions from FIXED_STRING to STRING and from FLOAT to DOUBLE are allowed.

## Examples

```ngql
nebula> CREATE TAG IF NOT EXISTS t1 (p1 string, p2 int);
nebula> ALTER TAG t1 ADD (p3 int, p4 string);
nebula> ALTER TAG t1 ADD (p3 int32, fixed_string(10));
nebula> ALTER TAG t1 TTL_DURATION = 2, TTL_COL = "p2";
nebula> ALTER TAG t1 COMMENT = 'test1';
nebula> ALTER TAG t1 ADD (p5 double NOT NULL DEFAULT 0.4 COMMENT 'p5') COMMENT='test2';
// Change the `p3` property to INT8
nebula> ALTER TAG t1 CHANGE (p3 int8, p4 string);
// Change the data type of p3 in the TAG t1 from INT32 to INT64, and that of p4 from FIXED_STRING(10) to STRING.
nebula> ALTER TAG t1 CHANGE (p3 int64, p4 string);
[ERROR(-1005)]: Unsupported!
```

Expand Down
4 changes: 2 additions & 2 deletions docs-2.0/3.ngql-guide/13.edge-statements/1.insert-edge.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ INSERT EDGE [IF NOT EXISTS] <edge_type> ( <prop_name_list> ) VALUES

- `dst_vid` is the VID of the destination vertex. It specifies the end of an edge.

* `rank` is optional. It specifies the edge rank of the same edge type. If not specified, the default value is `0`. You can insert many edges with the same edge type, source vertex, and destination vertex by using different rank values.
* `rank` is optional. It specifies the edge rank of the same edge type. The data type is `int`. If not specified, the default value is `0`. You can insert many edges with the same edge type, source vertex, and destination vertex by using different rank values.

!!! compatibility "OpenCypher compatibility"

Expand Down Expand Up @@ -97,6 +97,6 @@ nebula> FETCH PROP ON e2 "14"->"15"@1 YIELD edge AS e;
!!! Note

* NebulaGraph {{ nebula.release }} allows dangling edges. Therefore, you can write the edge before the source vertex or the destination vertex exists. At this time, you can get the (not written) vertex VID through `<edgetype>._src` or `<edgetype>._dst` (which is not recommended).
* Atomic operation is not guaranteed during the entire process for now. If it fails, please try again. Otherwise, partial writing will occur. At this time, the behavior of reading the data is undefined.
* Atomic operation is not guaranteed during the entire process for now. If it fails, please try again. Otherwise, partial writing will occur. At this time, the behavior of reading the data is undefined. For example, if multiple machines are involved in the write operation, only one of the forward and reverse edges of a single edge is written successfully, or only part of the edge is written successfully when multiple edges are inserted. In this case, an error will be returned, so please execute the command again.
* Concurrently writing the same edge will cause an `edge conflict` error, so please try again later.
* The inserting speed of an edge is about half that of a vertex. Because in the storaged process, the insertion of an edge involves two tasks, while the insertion of a vertex involves only one task.
2 changes: 1 addition & 1 deletion docs-2.0/3.ngql-guide/13.edge-statements/2.update-edge.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ SET <update_prop>
| `ON <edge_type>` | Yes | Specifies the edge type. The properties to be updated must be on this edge type. | `ON serve` |
| `<src_vid>` | Yes | Specifies the source vertex ID of the edge. | `"player100"` |
| `<dst_vid>` | Yes | Specifies the destination vertex ID of the edge. | `"team204"` |
| `<rank>` | No | Specifies the rank of the edge. | `10` |
| `<rank>` | No | Specifies the rank of the edge. The data type is `int`. | `10` |
| `SET <update_prop>` | Yes | Specifies the properties to be updated and how they will be updated. | `SET start_year = start_year +1` |
| `WHEN <condition>` | No | Specifies the filter conditions. If `<condition>` evaluates to `false`, the `SET` clause does not take effect. | `WHEN end_year < 2010` |
| `YIELD <output>` | No | Specifies the output format of the statement. | `YIELD start_year AS Start_Year` |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,19 +28,19 @@ nebula> SHOW SESSIONS;
+------------------+----------+--------------------+----------------------------+----------------------------+------------------+----------+--------------------+
| SessionId | UserName | SpaceName | CreateTime | UpdateTime | GraphAddr | Timezone | ClientIp |
+------------------+----------+--------------------+----------------------------+----------------------------+------------------+----------+--------------------+
| 1651220858102296 | "root" | "basketballplayer" | 2022-04-29T08:27:38.102296 | 2022-04-29T08:50:46.282921 | "127.0.0.1:9669" | 0 | "::ffff:127.0.0.1" |
| 1651199330300991 | "root" | "basketballplayer" | 2022-04-29T02:28:50.300991 | 2022-04-29T08:16:28.339038 | "127.0.0.1:9669" | 0 | "::ffff:127.0.0.1" |
| 1651112899847744 | "root" | "basketballplayer" | 2022-04-28T02:28:19.847744 | 2022-04-28T08:17:44.470210 | "127.0.0.1:9669" | 0 | "::ffff:127.0.0.1" |
| 1651041092662100 | "root" | "basketballplayer" | 2022-04-27T06:31:32.662100 | 2022-04-27T07:01:25.200978 | "127.0.0.1:9669" | 0 | "::ffff:127.0.0.1" |
| 1650959429593975 | "root" | "basketballplayer" | 2022-04-26T07:50:29.593975 | 2022-04-26T07:51:47.184810 | "127.0.0.1:9669" | 0 | "::ffff:127.0.0.1" |
| 1650958897679595 | "root" | "" | 2022-04-26T07:41:37.679595 | 2022-04-26T07:41:37.683802 | "127.0.0.1:9669" | 0 | "::ffff:127.0.0.1" |
| 1651220858102296 | "root" | "basketballplayer" | 2022-04-29T08:27:38.102296 | 2022-04-29T08:50:46.282921 | "127.0.0.1:9669" | 0 | "127.0.0.1" |
| 1651199330300991 | "root" | "basketballplayer" | 2022-04-29T02:28:50.300991 | 2022-04-29T08:16:28.339038 | "127.0.0.1:9669" | 0 | "127.0.0.1" |
| 1651112899847744 | "root" | "basketballplayer" | 2022-04-28T02:28:19.847744 | 2022-04-28T08:17:44.470210 | "127.0.0.1:9669" | 0 | "127.0.0.1" |
| 1651041092662100 | "root" | "basketballplayer" | 2022-04-27T06:31:32.662100 | 2022-04-27T07:01:25.200978 | "127.0.0.1:9669" | 0 | "127.0.0.1" |
| 1650959429593975 | "root" | "basketballplayer" | 2022-04-26T07:50:29.593975 | 2022-04-26T07:51:47.184810 | "127.0.0.1:9669" | 0 | "127.0.0.1" |
| 1650958897679595 | "root" | "" | 2022-04-26T07:41:37.679595 | 2022-04-26T07:41:37.683802 | "127.0.0.1:9669" | 0 | "127.0.0.1" |
+------------------+----------+--------------------+----------------------------+----------------------------+------------------+----------+--------------------+
nebula> SHOW SESSION 1635254859271703;
+------------------+----------+--------------------+----------------------------+----------------------------+------------------+----------+--------------------+
| SessionId | UserName | SpaceName | CreateTime | UpdateTime | GraphAddr | Timezone | ClientIp |
+------------------+----------+--------------------+----------------------------+----------------------------+------------------+----------+--------------------+
| 1651220858102296 | "root" | "basketballplayer" | 2022-04-29T08:27:38.102296 | 2022-04-29T08:50:54.254384 | "127.0.0.1:9669" | 0 | "::ffff:127.0.0.1" |
| 1651220858102296 | "root" | "basketballplayer" | 2022-04-29T08:27:38.102296 | 2022-04-29T08:50:54.254384 | "127.0.0.1:9669" | 0 | "127.0.0.1" |
+------------------+----------+--------------------+----------------------------+----------------------------+------------------+----------+--------------------+
```

Expand Down
2 changes: 1 addition & 1 deletion docs-2.0/3.ngql-guide/8.clauses-and-options/order-by.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ There are two order options:

```ngql
<YIELD clause>
ORDER BY <expression> [ASC | DESC] [, <expression> [ASC | DESC] ...];
| ORDER BY <expression> [ASC | DESC] [, <expression> [ASC | DESC] ...];
```

!!! compatibility
Expand Down
16 changes: 15 additions & 1 deletion docs-2.0/3.ngql-guide/8.clauses-and-options/return.md
Original file line number Diff line number Diff line change
Expand Up @@ -141,9 +141,10 @@ nebula> MATCH (v:player) \
+------------------+--------------+
```

Use the `properties()` function to return all properties on a vertex or an edge.
Use the syntax `<vertex_name>.<tag_name>.<property_name>` to return the property of a vertex; use the syntax `<edge_name>.<property_name>` to return the property of an edge.

```ngql
// Return the property of a vertex
nebula> MATCH p=(v:player{name:"Tim Duncan"})-[]->(v2) \
RETURN properties(v2);
+----------------------------------+
Expand All @@ -155,6 +156,19 @@ nebula> MATCH p=(v:player{name:"Tim Duncan"})-[]->(v2) \
+----------------------------------+
```

```ngql
// Return the property of an edge
nebula> MATCH (v:player{name:"Tim Duncan"})-[e]->() \
RETURN e.start_year, e.degree \
+--------------+----------+
| e.start_year | e.degree |
+--------------+----------+
| __NULL__ | 95 |
| __NULL__ | 95 |
| 1997 | __NULL__ |
+--------------+----------+
```

## Return edge type

Use the `type()` function to return the matched edge types.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,8 @@ Using Docker Compose can quickly deploy NebulaGraph services based on the prepar

!!! Note

Update the [NebulaGraph images](#how_to_upgrade_or_update_the_docker_images_of_nebula_graph_services) and [NebulaGraph Console images](#how_to_update_the_nebula_console_client) first if they are out of date.
- Update the [NebulaGraph images](#how_to_upgrade_or_update_the_docker_images_of_nebulagraph_services) and [NebulaGraph Console images](#how_to_update_the_nebulagraph_console_client) first if they are out of date.
- The return result after executing the command varies depending on the installation directory.

```bash
[nebula-docker-compose]$ docker-compose up -d
Expand Down
Loading

0 comments on commit 6b935eb

Please sign in to comment.