Home | History | Annotate | Download | only in liblmdb

Lines Matching refs:m3

1967 	MDB_cursor *m3, *m0 = mc;
1981 for (m3 = mc;; m3 = &mx->mx_cursor) {
1983 for (j=0; j<m3->mc_snum; j++) {
1984 mp = m3->mc_pg[j];
1988 mx = m3->mc_xcursor;
1994 leaf = NODEPTR(mp, m3->mc_ki[j-1]);
2474 MDB_cursor *m2, *m3;
2543 m3 = &m2->mc_xcursor->mx_cursor;
2544 if (m3->mc_snum < mc->mc_snum) continue;
2545 if (m3->mc_pg[mc->mc_top] == mp)
2546 m3->mc_pg[mc->mc_top] = np;
7039 MDB_cursor *m2, *m3;
7046 m3 = &m2->mc_xcursor->mx_cursor;
7048 m3 = m2;
7049 if (m3 == mc || m3->mc_snum < mc->mc_snum || m3->mc_pg[i] != mp) continue;
7050 if (m3->mc_ki[i] >= mc->mc_ki[i] && insert_key) {
7051 m3->mc_ki[i]++;
7053 XCURSOR_REFRESH(m3, i, mp);
8052 MDB_cursor *m2, *m3;
8062 m3 = &m2->mc_xcursor->mx_cursor;
8064 m3 = m2;
8065 if (!(m3->mc_flags & C_INITIALIZED) || m3->mc_top < csrc->mc_top)
8067 if (m3 != cdst &&
8068 m3->mc_pg[csrc->mc_top] == mpd &&
8069 m3->mc_ki[csrc->mc_top] >= cdst->mc_ki[csrc->mc_top]) {
8070 m3->mc_ki[csrc->mc_top]++;
8072 if (m3 !=csrc &&
8073 m3->mc_pg[csrc->mc_top] == mps &&
8074 m3->mc_ki[csrc->mc_top] == csrc->mc_ki[csrc->mc_top]) {
8075 m3->mc_pg[csrc->mc_top] = cdst->mc_pg[cdst->mc_top];
8076 m3->mc_ki[csrc->mc_top] = cdst->mc_ki[cdst->mc_top];
8077 m3->mc_ki[csrc->mc_top-1]++;
8080 XCURSOR_REFRESH(m3, csrc->mc_top, m3->mc_pg[csrc->mc_top]);
8087 m3 = &m2->mc_xcursor->mx_cursor;
8089 m3 = m2;
8090 if (m3 == csrc) continue;
8091 if (!(m3->mc_flags & C_INITIALIZED) || m3->mc_top < csrc->mc_top)
8093 if (m3->mc_pg[csrc->mc_top] == mps) {
8094 if (!m3->mc_ki[csrc->mc_top]) {
8095 m3->mc_pg[csrc->mc_top] = cdst->mc_pg[cdst->mc_top];
8096 m3->mc_ki[csrc->mc_top] = cdst->mc_ki[cdst->mc_top];
8097 m3->mc_ki[csrc->mc_top-1]--;
8099 m3->mc_ki[csrc->mc_top]--;
8102 XCURSOR_REFRESH(m3, csrc->mc_top, m3->mc_pg[csrc->mc_top]);
8284 MDB_cursor *m2, *m3;
8290 m3 = &m2->mc_xcursor->mx_cursor;
8292 m3 = m2;
8293 if (m3 == csrc) continue;
8294 if (m3->mc_snum < csrc->mc_snum) continue;
8295 if (m3->mc_pg[top] == psrc) {
8296 m3->mc_pg[top] = pdst;
8297 m3->mc_ki[top] += nkeys;
8298 m3->mc_ki[top-1] = cdst->mc_ki[top-1];
8299 } else if (m3->mc_pg[top-1] == csrc->mc_pg[top-1] &&
8300 m3->mc_ki[top-1] > csrc->mc_ki[top-1]) {
8301 m3->mc_ki[top-1]--;
8304 XCURSOR_REFRESH(m3, top, m3->mc_pg[top]);
8396 MDB_cursor *m2, *m3;
8401 m3 = &m2->mc_xcursor->mx_cursor;
8403 m3 = m2;
8404 if (!(m3->mc_flags & C_INITIALIZED) || (m3->mc_snum < mc->mc_snum))
8406 if (m3->mc_pg[0] == mp) {
8407 m3->mc_snum = 0;
8408 m3->mc_top = 0;
8409 m3->mc_flags &= ~C_INITIALIZED;
8432 MDB_cursor *m2, *m3;
8437 m3 = &m2->mc_xcursor->mx_cursor;
8439 m3 = m2;
8440 if (m3 == mc) continue;
8441 if (!(m3->mc_flags & C_INITIALIZED))
8443 if (m3->mc_pg[0] == mp) {
8445 m3->mc_pg[i] = m3->mc_pg[i+1];
8446 m3->mc_ki[i] = m3->mc_ki[i+1];
8448 m3->mc_snum--;
8449 m3->mc_top--;
8540 MDB_cursor *m2, *m3;
8550 m3 = (mc->mc_flags & C_SUB) ? &m2->mc_xcursor->mx_cursor : m2;
8551 if (! (m2->mc_flags & m3->mc_flags & C_INITIALIZED))
8553 if (m3 == mc || m3->mc_snum < mc->mc_snum)
8555 if (m3->mc_pg[mc->mc_top] == mp) {
8556 if (m3->mc_ki[mc->mc_top] == ki) {
8557 m3->mc_flags |= C_DEL;
8560 m3->mc_xcursor->mx_cursor.mc_flags &= ~(C_INITIALIZED|C_EOF);
8563 } else if (m3->mc_ki[mc->mc_top] > ki) {
8564 m3->mc_ki[mc->mc_top]--;
8566 XCURSOR_REFRESH(m3, mc->mc_top, mp);
8588 m3 = (mc->mc_flags & C_SUB) ? &m2->mc_xcursor->mx_cursor : m2;
8589 if (!(m2->mc_flags & m3->mc_flags & C_INITIALIZED))
8591 if (m3->mc_snum < mc->mc_snum)
8593 if (m3->mc_pg[mc->mc_top] == mp) {
8594 if (m3->mc_ki[mc->mc_top] >= mc->mc_ki[mc->mc_top]) {
8595 /* if m3 points past last node in page, find next sibling */
8596 if (m3->mc_ki[mc->mc_top] >= nkeys) {
8597 rc = mdb_cursor_sibling(m3, 1);
8599 m3->mc_flags |= C_EOF;
8606 if (m3->mc_xcursor && !(m3->mc_flags & C_EOF)) {
8607 MDB_node *node = NODEPTR(m3->mc_pg[m3->mc_top], m3->mc_ki[m3->mc_top]);
8615 if (m3->mc_xcursor->mx_cursor.mc_flags & C_INITIALIZED) {
8617 m3->mc_xcursor->mx_cursor.mc_pg[0] = NODEDATA(node);
8619 mdb_xcursor_init1(m3, node);
8620 rc = mdb_cursor_first(&m3->mc_xcursor->mx_cursor, NULL, NULL);
8625 m3->mc_xcursor->mx_cursor.mc_flags |= C_DEL;
9072 MDB_cursor *m2, *m3;
9078 m3 = &m2->mc_xcursor->mx_cursor;
9080 m3 = m2;
9081 if (m3 == mc)
9083 if (!(m2->mc_flags & m3->mc_flags & C_INITIALIZED))
9088 if (m3->mc_pg[0] != mp)
9092 m3->mc_ki[k+1] = m3->mc_ki[k];
9093 m3->mc_pg[k+1] = m3->mc_pg[k];
9095 if (m3->mc_ki[0] >= nkeys) {
9096 m3->mc_ki[0] = 1;
9098 m3->mc_ki[0] = 0;
9100 m3->mc_pg[0] = mc->mc_pg[0];
9101 m3->mc_snum++;
9102 m3->mc_top++;
9104 if (m3->mc_top >= mc->mc_top && m3->mc_pg[mc->mc_top] == mp) {
9105 if (m3->mc_ki[mc->mc_top] >= newindx && !(nflags & MDB_SPLIT_REPLACE))
9106 m3->mc_ki[mc->mc_top]++;
9107 if (m3->mc_ki[mc->mc_top] >= nkeys) {
9108 m3->mc_pg[mc->mc_top] = rp;
9109 m3->mc_ki[mc->mc_top] -= nkeys;
9111 m3->mc_ki[i] = mn.mc_ki[i];
9112 m3->mc_pg[i] = mn.mc_pg[i];
9115 } else if (!did_split && m3->mc_top >= ptop && m3->mc_pg[ptop] == mc->mc_pg[ptop] &&
9116 m3->mc_ki[ptop] >= mc->mc_ki[ptop]) {
9117 m3->mc_ki[ptop]++;
9120 XCURSOR_REFRESH(m3, mc->mc_top, m3->mc_pg[mc->mc_top]);