# Neo4j TransactionMemoryLimit

**URL:** <https://community.neo4j.com/t/neo4j-transactionmemorylimit/61000>\
**Category:** Neo4j Graph Platform\
**Created:** [February 21, 2023, 7:48am UTC](https://community.neo4j.com/t/neo4j-transactionmemorylimit/61000 "2023-02-21T07:48:56Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![amirjalali65](https://sea1.discourse-cdn.com/flex021/user_avatar/community.neo4j.com/amirjalali65/32/27686_2.png) [@amirjalali65](https://community.neo4j.com/u/amirjalali65)\
**Post date:** [February 21, 2023, 7:48am UTC](https://community.neo4j.com/t/neo4j-transactionmemorylimit/61000/1 "2023-02-21T07:48:57Z")

</div>

I am running Neo4j (v4.1.5) community edition on a server node with 64GB RAM. I set the heap size configuration as follows:

```auto
dbms.memory.heap.initial_size=31G
dbms.memory.heap.max_size=31G

```

During the ingestion via bolt, I got the following error:

```auto
 '{code: Neo.TransientError.General.TransactionMemoryLimit} {message: Can't allocate extra 512 bytes due to exceeding memory limit; used=2147483648, max=2147483648}'

```

What I don't understand is that the `max` in the error message shows `2GB`, while I've set the initial and max heap size to `31GB`. Can someone help me understand how memory setting works in Neo4j?

---

<div class="post-metadata">

**Author:** ![glilienfield](https://sea1.discourse-cdn.com/flex021/user_avatar/community.neo4j.com/glilienfield/32/27534_2.png) [@glilienfield](https://community.neo4j.com/u/glilienfield)\
**Post date:** [February 21, 2023, 3:43pm UTC](https://community.neo4j.com/t/neo4j-transactionmemorylimit/61000/2 "2023-02-21T15:43:37Z")

</div>

I see there are two configurations related to transaction memory:

#dbms.memory.transaction.global\_max\_size=256m  
#dbms.memory.transaction.max\_size=16m

They are committed out in my conf file, and there is a comment that there is no limit by default. Do you have either of these set by chance?
