mirror of
https://github.com/MariaDB/server.git
synced 2025-01-22 23:04:20 +01:00
8dd2e5b8d9
PSTACK, libmysqld and MySQL filesystem UPDATE ... ORDER BY DELETE ... ORDER BY New faster fulltext handling Faster compressed keys Makefile.am: Added support for pstack and libmysqld_dir acconfig.h: MySQL filesystem and PSTACK acinclude.m4: MySQL File system client/mysql.cc: Support for --xml configure.in: Pstack, MySQL FS and libmysqld_dir include/ft_global.h: Faster fulltext include/my_pthread.h: Made c++ safe include/myisam.h: Update for faster fulltext include/mysql_com.h: new my_net_read() include/violite.h: libmysqld libmysql/net.c: New protocol that supports big packets myisam/Makefile.am: Faster fulltext myisam/ft_parser.c: Faster fulltext myisam/ft_search.c: Faster fulltext myisam/ft_update.c: Faster fulltext myisam/ftdefs.h: Faster fulltext myisam/mi_check.c: Faster fulltext myisam/mi_open.c: Faster compressed keys myisam/mi_search.c: Faster compressed keys myisam/mi_update.c: Faster compressed keys myisam/myisamdef.h: Faster compressed keys myisam/sort.c: Faster compressed keys mysql-test/mysql-test-run.sh: --skip-innobase and --skip-bdb sql/ChangeLog: Changelog sql/Makefile.am: PSTACK sql/mysql_priv.h: New ORDER BY options and libmysqld sql/mysqld.cc: PSTACK sql/net_serv.cc: New protocol that supports big packets sql/share/estonian/errmsg.txt: New error messages sql/sql_base.cc: Better list_open_tabels sql/sql_delete.cc: ORDER BY for delete sql/sql_lex.cc: Added language convertation of all strings sql/sql_parse.cc: Changes for libmysqld Use new ORDER BY options sql/sql_show.cc: Character set convertations Use new list_open_tables function. sql/sql_update.cc: UPDATE ... ORDER BY sql/sql_yacc.yy: Clean up symbol definitions DELETE .. ORDER BY UPDATE .. ORDER BY sql/table.h: new OPEN_TABLE_LIST structure BitKeeper/etc/logging_ok: Logging to logging@openlogging.org accepted
92 lines
2.2 KiB
C
92 lines
2.2 KiB
C
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
#include <orb/orbit.h>
|
|
|
|
#include "CorbaFS.h"
|
|
|
|
CorbaFS_FileSystem fs;
|
|
|
|
int
|
|
main (int argc, char *argv[])
|
|
{
|
|
CORBA_Environment ev;
|
|
CORBA_ORB orb;
|
|
CorbaFS_Inode inode;
|
|
CorbaFS_Buffer *buffer;
|
|
CorbaFS_DirEntSeq *dirents;
|
|
CorbaFS_dirent *dirent;
|
|
|
|
CORBA_unsigned_short mode;
|
|
CORBA_unsigned_long uid;
|
|
CORBA_unsigned_long gid;
|
|
CORBA_unsigned_long size;
|
|
CORBA_unsigned_long inodeNum;
|
|
CORBA_unsigned_short numLinks;
|
|
CORBA_long atime;
|
|
CORBA_long mtime;
|
|
CORBA_long ctime;
|
|
|
|
int i;
|
|
|
|
int niters = 10;
|
|
|
|
CORBA_exception_init(&ev);
|
|
orb = CORBA_ORB_init(&argc, argv, "orbit-local-orb", &ev);
|
|
|
|
if(argc < 2)
|
|
{
|
|
printf("Need a binding ID thing as argv[1]\n");
|
|
return 1;
|
|
}
|
|
|
|
|
|
fs = CORBA_ORB_string_to_object(orb, argv[1], &ev);
|
|
if (!fs) {
|
|
printf("Cannot bind to %s\n", argv[1]);
|
|
return 1;
|
|
}
|
|
|
|
if (argc >= 3)
|
|
inode = CorbaFS_FileSystem_getInode(fs, argv[2], &ev);
|
|
else
|
|
inode = CorbaFS_FileSystem_getInode(fs, "/proc/cpuinfo", &ev);
|
|
|
|
if (!inode)
|
|
{
|
|
printf("Cannot get inode\n");
|
|
}
|
|
|
|
CorbaFS_Inode_getStatus(inode,
|
|
&mode,
|
|
&uid,
|
|
&gid,
|
|
&size,
|
|
&inodeNum,
|
|
&numLinks,
|
|
&atime,
|
|
&mtime,
|
|
&ctime,
|
|
&ev);
|
|
|
|
printf("inode = %x\n", inode);
|
|
CorbaFS_Inode_readpage(inode, &buffer, 100000, 100, &ev);
|
|
printf("readpage got %d bytes\n", buffer->_length);
|
|
printf("readpage returned : %s\n", buffer->_buffer);
|
|
|
|
if (argc >= 3)
|
|
dirents = CorbaFS_FileSystem_readdir(fs, argv[2], &ev);
|
|
else
|
|
dirents = CorbaFS_FileSystem_readdir(fs, "/", &ev);
|
|
|
|
dirent = dirents->_buffer;
|
|
for (i = 0; i < dirents->_length; i++)
|
|
{
|
|
printf("%d = %s\n", dirent->inode, dirent->name);
|
|
dirent++;
|
|
}
|
|
|
|
CORBA_Object_release(fs, &ev);
|
|
CORBA_Object_release((CORBA_Object)orb, &ev);
|
|
|
|
return 0;
|
|
}
|