Search Results

Search found 95133 results on 3806 pages for 'switch user'.

Page 420/3806 | < Previous Page | 416 417 418 419 420 421 422 423 424 425 426 427  | Next Page >

  • In Ubuntu, how do I change my default Greek font?

    - by Matthew
    I'm taking a course in ancient Greek, and I store notes and flash cards on my computer. However, by default Ubuntu uses a modern Greek font. This changes some noticable things--for example, a circumflex is ? instead of a?. I can type the circumflex by switching back to english and entering the unicode combining character u0311 (which is what I just did to type the second a), but obviously this is very cumbersome. I've installed the "ttf-linex" package from the Ubuntu repositories, which claims to include an ancient Greek font. But I have no idea how to enable this font for whenever I switch to the Greek keyboard layout.

    Read the article

  • Performance Overhead of Encrypted /home

    - by SabreWolfy
    I have a netbook with Windows on the second partition and Xubuntu (/ and /home) on the third partition. I selected to encrypt my home folder during installation. The performance of the netbook is adequate for the small machine that it is, but I'm looking to improve performance. I could not find much information about the overhead (CPU or drive) associated with home partition encryption. I ran the following, writing to my home partition as well as the the mounted Windows partition: dd if=/dev/zero of=~/dummy bs=512 count=10240 dd if=/dev/zero of=/media/Windows/dummy bs=512 count=10240 The first returned 2.4MB/s and the second returned 2.5MB/s. Can I therefore deduce that there is very little overhead to home folder encryption? I'm not sure if the different filesystems will make any difference (/ and /home are ext3). Update 1 I don't know why I didn't use /tmp instead of the mounted Windows folder. Only /home is encrypted, so /tmp is unencrypted ext3. The results of the dd as above are astounding: ~: 2.4 MB/s /tmp: 42.6 MB/s Comments please? The reason I am asking this is that disk access on the netbook is noticeably slow. Update 2 I timed each of the dd operations with time: ~: real 0m2.217s user 0m0.028s sys 0m2.176s /tmp: real 0m0.152s user 0m0.012s sys 0m0.136s See also: discussion on UbuntuForums.org and bug report Edit: Output of mount: /dev/sda3 on / type ext3 (rw,noatime,errors=remount-ro,user_xattr,commit=600) proc on /proc type proc (rw,noexec,nosuid,nodev) none on /sys type sysfs (rw,noexec,nosuid,nodev) fusectl on /sys/fs/fuse/connections type fusectl (rw) none on /sys/kernel/debug type debugfs (rw) none on /sys/kernel/security type securityfs (rw) none on /dev type devtmpfs (rw,mode=0755) none on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620) none on /dev/shm type tmpfs (rw,nosuid,nodev) none on /var/run type tmpfs (rw,nosuid,mode=0755) none on /var/lock type tmpfs (rw,noexec,nosuid,nodev) binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev) gvfs-fuse-daemon on /home/USER/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=USER) `

    Read the article

  • Google Mail: Import labels when switching from POP3 to IMAP

    - by toobb
    My situation is the following: I have a Google Mail email-address and I have been using this address in Thunderbird fetching the emails with POP3 (the emails also remained on the server and where "archived"). In Thunderbird I organized my emails in folders. Now I want to switch to IMAP (with the same email address), but I want to keep the folder structure I created in Thunderbird. I could create a 2nd account in Thunderbird that uses IMAP, and then move my folders from the old account to the new one. But the problem is, that Google Mail probably does not recognize that it already has these moved emails in "All Mails". I will probably end up with two copies of every email. Does someone has good idea how to deal with that problem? Thank you!

    Read the article

  • Subscription service or software to handle a Magazine's PDF

    - by Paolo
    I'm looking for an installable or hosted software (service) to handle the process of public users subscribing to the Magazine and receiving the PDF automatically upon an admin upload the new one. The system will have to: handle the money part (PayPal&Co. are OK) let user buy old issues of the Magazine warn user on subscription expiring, etc. PDF stamping and WordPress integration (user credential sharing, page access of subriscrebed goods, etc) will be a big plus.

    Read the article

  • Share Folders & Files Between Vista and XP Machines

    - by Mysticgeek
    Since Microsoft has three operating systems in use, chances are you’ll find yourself needing to share files between XP, Vista, Windows 7, or some combination of the three. Here we take a look at sharing between a Vista and XP on your home network. Share Without Password Protected Sharing If you’re not worried about who’s accessing the files and folders, the easiest method is to disable Password Protected Sharing. So on the Vista machine open Network and Sharing Center. Under Sharing and Discovery make sure Network Discovery, File Sharing, and, Public Folder Sharing are turned on. Also turn off Password Protected Sharing… Now go into the Vista Public folder, located in C:\Users\Public, and add what you want to share or create a new folder. In this example we created a new folder called XP_Share and added some files to it. On the XP machine go into My Network Places and under Network Tasks click on View Workgroup Computers. Now you’ll see all of the computers on your network which should be part of the same Workgroup. Here we need to double-click on the Vista computer. And there we go…no password to enter so we can access the XP_Share folder or anything else that is located in the Public folder. Share with Password Protected Sharing If you want to keep Password Protected Sharing turned on, then we need to do things a little different. When it’s turned on and you try to access the Vista machine from XP, you’re prompted for a password, and no matter what you think the credentials are, you can’t get access…very annoying. So what we need to do is add the XP Machine as a user. Right-click on Computer from the Start Menu or desktop icon and select Manage from the context menu. The Computer Management screen opens up and you want to expand Local Users and Groups, then the Users folder. Then right-click any open area an select New User. Now create a new user name and password, you can also fill in the other fields if you want. Then make sure to uncheck User must change password at next logon and check the box next to Password never expires. Click the Create button and close out of the New User screen. You’ll then see the new user we created in the list and you can close out of the Computer Management window. Now back on the XP computer when you double-click on the Vista machine, your prompted to log in. Just type in the username and password you just created. Now you’ll have access to the Public folder contents. Set up Sharing on XP If you want to access a shared folder from the Vista computer located on the XP machine, it’s the same process in reverse. On the XP computer in Shared Documents, right-click on the folder you want to share and select Sharing and Security. Then select the radio button next to Share this folder and click Ok. Go into Computer Management and create a new user… Now from the Vista machine double click on the XP machine icon, enter the password, then access the folders and files you need. If you have multiple versions of Windows on your home network, you’ll now be able to access files and folders from each of them. If you want to share between Windows 7 and XP check out our article on how to share files and printers between Windows 7 and XP. You might also want to check out our article on how to share files and printers between Windows 7 and Vista. Similar Articles Productive Geek Tips Show Hidden Files and Folders in Windows 7 or VistaHow To Share Files and Printers Between Windows 7 and VistaShare Files and Printers between Windows 7 and XPHow To Share a Folder the XP Way in Windows VistaMoving Your Personal Data Folders in Windows Vista the Easy Way TouchFreeze Alternative in AutoHotkey The Icy Undertow Desktop Windows Home Server – Backup to LAN The Clear & Clean Desktop Use This Bookmarklet to Easily Get Albums Use AutoHotkey to Assign a Hotkey to a Specific Window Latest Software Reviews Tinyhacker Random Tips Revo Uninstaller Pro Registry Mechanic 9 for Windows PC Tools Internet Security Suite 2010 PCmover Professional Scan your PC for nasties with Panda ActiveScan CleanMem – Memory Cleaner AceStock – The Personal Stock Monitor Add Multiple Tabs to Office Programs The Wearing of the Green – St. Patrick’s Day Theme (Firefox) Perform a Background Check on Yourself

    Read the article

  • OS X Money Management Software

    - by Ryan O
    I recently moved from Windows to a Mac, but I still have to keep Virtualbox and Windows installation on the machine to use Quicken. iBank looked promising, but I had problems importing my data from Quicken. I would switch to Mint if they would allow you to enter transactions manually, but the lack of that feature is a deal breaker. (I use Quicken primarily to track uncleared transactions, with the bonus of reporting on past spending.) Is there any other software I should try that will be able to import at least most of my old data from Quicken? Edit: For what it's worth, I never did find anything else. Quicken Essentials for Mac was released this year, but doesn't handle investments well from what I hear. I'm now on Quicken 2010 under XP running inside Virtualbox. It's not ideal, but it seems to be the only thing around right now that meets my needs.

    Read the article

  • Changing default shortcut for Spaces on a Macbook Pro with Snow Leapord?

    - by Mahmoud Abdelkader
    I'm primarily a Linux user but my main home PC is a Macbook Pro with Snow Leopard. The concept of "Spaces" in a Mac is extremely important to how I utilize my development environments and I use this feature on Linux all the time. I use Compiz Manager for Ubuntu which allows me to "Desktop Switch" and navigate all desktops using the Ctrl+Alt+Arrow keys to a particular desktop. On a Mac, the process is similar, however, you're only given 3 non-customizable short-cuts: Option+Arrow, Ctrl+Arrow, and Alt+Arrow. How can I change the keyboard shortcut to take Ctrl+Option? The keys would then fit my working style and it won't feel awkward to remember two sets of keyboard shortcuts. Thanks! Mahmoud

    Read the article

  • Why my laptop doesnt boot in any OS (windows or ubuntu) after RAM upgrade?

    - by qrsq
    My laptop previously had 2 slots of RAM ( 1x1Gb , 1x2GB , both were clocked at 1066mhz) and it was working on windows 7 x86 OS. I Upgraded the ram with ( 2x4GB clcoked at 1333mhz). Bios displayed 8192MB of memory and windows was working ok but (only 2.99GB of ram from 8gb was avabile). So i decided to switch to an x64 system to be able to use all the amount of memory. But the laptop wasnt able to install any os (windows 7 x64 or windows 8 x64) so i placed the 3gb of ram instead of 8gb. Then i succesfully instaled an x64 os (windows 8). After than i placed the 8gb ram back again. Now the computer doesnt boot in the os but bios is working normally. I tried also to install ubuntu , without any succes. What should i do ?? All the help will be appreciated. thanks

    Read the article

  • How to use the AccountsService API with Python?

    - by pabluk
    I'm writing an application for the Ubuntu app showdown and I try to read/write the user's profile picture using this >>> from gi.repository import AccountsService, GLib >>> current_user = GLib.get_user_name() >>> user = AccountsService.UserManager.get_default().get_user(current_user) >>> print user.get_icon_file() None >>> print user.get_user_name() None But apparently does not work. Is there another way to use AccountsService with Python? I could not find more documentation about AccountsService and Python. PS: to test this example you need to install gir1.2-accountsservice-1.0 on Ubuntu 12.04. $ sudo apt-get install gir1.2-accountsservice-1.0

    Read the article

  • Western Digital My Book World drops off network

    - by Macha
    Most of my storage in my house relies on a WD My Book World Edition 500GB network drive. I threw out the vendor crapware they give you to access it (a trial version of Mionet) after it starting nagging me to upgrade, and set it up as a standard network drive using Window's Map Network Drive. However, since then, it has been dropping off the network after 30 minutes of non-usage. The only way to get it back on is to switch it off and on again at the plug socket. Does anyone know what is causing this, and hopefully how to fix it? EDIT: it's the original "blue rings" version with the latest firmware.

    Read the article

  • Does /NOCANDY avoid any adware-related activities with OpenCandy?

    - by Andrew Grimm
    OpenCandy claims that using the /NOCANDY switch when using a OpenCandy-affiliated installer allows you to avoid opencandy. Should I take their word for it? If not, can anyone independent of OpenCandy and their affiliates verify that /NOCANDY works? Background: About to install WinSCP onto a fresh Windows installation, and found out that new versions have OpenCandy associated with their installer. For the sake of balance, here's a link to WinSCP's FAQ on OpenCandy. The claim about /NOCANDY working appears on WinSCP's web site, but the same boilerplate appears on other OpenCandy web sites. If the OpenCandy people are offended by the tag "spyare": sorry, but it's the main tag here, rather than "adware".

    Read the article

  • How to enable vga switcheroo on an Asus U41S?

    - by Nikita Shiman
    I have Asus U41S notebook with 2 wideocards, Intel HD Graphics 3000 and GeForce GT540M. I want to turn off the GF videocard, and work only with Intel. On the internet I found out how to do this with vga_switcheroo : lspci | grep VGA to see what number have my videocards cat /sys/kernel/debug/vgaswitcheroo/switch to see what for videocard is active but terminal says that it can't find locations of /vgaswitcheroo/switch. What must I do?

    Read the article

  • Should I convert my AAC M4A files to MP3?

    - by j0rd4n
    Due to Apple, I have a large majority of my music files in the AAC M4A format. They do NOT have DRM so I don't have to worry about that. I'm getting tired of Apple products and really want to switch to a different brand player (and something more compatible with Linux). It appears most MP3 players support...well...MP3 and not AAC. Should I convert my library to be free of Apple and open to other players? Is this a lossless conversion? Can it be lossless? If I will lose quality, I'm not interested. Am I even doing the right thing? AAC is the better format, but I'm not seeing a lot of support for it yet. I'll be honest and say that I need some education in this department. Any helpful advice is most welcome.

    Read the article

  • AD Custom Attribute with unique value

    - by Zilog
    I have custom AD attribute added to my AD schema. Attribute's syntax is Unicode String. It is added to user class and the purpose of it is to store user ID of corporate ERP system. Problem is, that I can have two or more user objects with the same value stored in that attribute, which is something that I would like to avoid. Is there a way to configure AD attribute so it is unique within the domain boundary? (The same behavior as SAMAccountName attribute.) i.e : If there already exists user object in AD with this attribute set to "JSmith" and I try to set that attribute with the same value for another user, Direcory Services will refuse to update that object and give me "already exists" error. Domain functional level is windows 2003.

    Read the article

  • Debian based OS: Show system notification on clipboard copy/paste events

    - by ifischer
    When working with Linux (Debian based), I often experience problems in relation to the copy paste commands: I copy something with Ctrl+C or by selecting it with the mouse, but when I try to paste it somewhere else, the clipboard is empty and nothing happens - whatever reason caused this. This annoys me, as I have to switch to the source application again and again copy the text. So to really be sure if something was copied into the clipboard I would like it if the window manager (be it Gnome, KDE, etc) would show a Desktop Notification (for example powered by libnotify) as soon as anything is copied into the clipboard, showing the content that has been copied into the clipboard. Is that possible by using one of the many clipboard managers out there (glippy, clipit, ...)? If not, can I write a (DBus?)-hook, which is triggered during copy-to-clipboard-actions, showing the content which is to copy inside the Desktop Notification? (The latter approach would be more interesting, since I'm interested in hooking into system events in general)

    Read the article

  • What could cause my LAN Pings be greater than 100ms?

    - by James Holland
    I have 2 servers (Both: Windows Server 2008, Dual Xeon 2.8Ghz, 32GB RAM, 8 x 15k SAS Drives). One of them is a DC / Web server / Exchange Server, the other is a SQL Server (2008). I have a 48 port Netgear GS748T Gigabit switch. When I ping from server to server, I get ping times <1ms, great, but when I ping from a PC, I get varying pings from the occasional <1ms to 500ms!! If I log into either server and look at Task Manager, CPU usage peaks at 20%, memory usage is 100%, but I am led to believe this is normal as Exchange will just use as much as you have, and release it when requested. Network usage peaks at 1%. I really don't understand how the ping can vary that much. I know I am giving very little info, but this is all I know, I apologise, but can anyone help? In response to question, I have pinged by both IP address and hostname, no difference in ping times.

    Read the article

  • Which dbghelp.dll do I use for debugging?

    - by Coldblackice
    I'm trying to configure symbols in Process Explorer. I have the Windows SDK installed (and thus, Debugging Tools). However, there are two versions of dbghelp.dll -- x86 and x64. Which one do I use? Other sources on the net say to just point to the dbghelp.dll that's in the base directory of the Debugging Tools. But there's no such dbghelp.dll -- they're in their respect 32 and 64 bit folders (i.e., C:\Program Files (x86)\Windows Kits\8.0\Debuggers\x64). I'm using a Windows 7 x64 operating system, so does that mean I should load the x64 .dll? Or is it a matter of what I'm debugging? If it is a matter of what I'm debugging, does that mean that I have to switch this .dll depending what process I want to get symbol information on in Process Explorer?

    Read the article

  • TrueCrypt Failing to Decrypt External Hard Drive after changing Enclosures

    - by Anx Ara
    I have a 4TB external hard drive that was previously encrypted using TrueCrypt. The power source on the hard drive enclosure failed, so I had to switch the hard drive itself into a new enclosure. I can no longer decrypt the hard drive using TrueCrypt, as it says my password is wrong. I am certain that I entering the correct password. Additionally, in TrueCrypt, when I try to mount the volume under "Select Device", it shows the following: Harddisk 5: 3.6TB Device\Harddisk5\Partition 1 H: 465GB Whereas before I changed the enclosure it would show: Harddisk 5: 3.6TB Device\Harddisk5\Partition 1 H: 3.6TB I am on a Windows 8 PC and using TrueCrypt 7.1a. How can I get it to decrypt properly?

    Read the article

  • File Saving Sometimes Fails

    - by YellPika
    When I attempt to save files, it sometimes (randomly) fails. In Blender, I sometimes get "Version Backup Failed: File Saved With @". In Visual Studio, building sometimes fails with an error message indicating that the target file/exe cannot be overwritten. If I wait a bit, I can save fine. It's almost as if programs are taking an abnormal amount of time to 'let go' of the files. What could be causing this behaviour? This seems to be caused by Windows Live Mesh monitoring my files, and locking them whenever it uploads the new versions (BAD considering the amount of times I save my files, even redundantly). Any suggestions to work around this behaviour? Should I switch to a better service to sync my files?

    Read the article

  • Looking for a software solution which acts like a hardware KVM

    - by Daisetsu
    I've seen programs like Synergy before which allow a keyboard and mouse to be used across multiple systems. Unfortunately Synergy treats both systems like they are the same thing (when you move the mouse too far to the right it jumps to the other computer, along with keyboard input). I only have 1 monitor so what I need to do here is have a quick way to view my other desktop that is easy to manage. Remote desktop is difficult because you have to take it out of fullscreen, then minimize it and then re-maximize it when you want to use it again. If there were a single button I could hit to switch to the other computer that would be optimal. Both computers are on the same lan.

    Read the article

  • OSX Keyboard Shortcuts in Dialogs?

    - by Dan Fabulich
    On Windows, every dialog box includes underlined letters that you can activate using the Alt key. I use these "Alt" keyboard shortcuts all the time; I'm missing them as I'm trying to switch to OSX. On OSX, all I can find is Tab navigation, which requires you to press Tab seven or eight times to get anywhere in most dialog boxes. (And even that is hidden by default: you have to enable "Full keyboard access" in the "Keyboard & Mouse" control panel to be able to Tab between buttons.) Is there some way I can get something like the Windows Alt accelerators for OSX dialogs? I'm willing to write Automator code, download/purchase software, etc. Specifically, I'm imagining maybe something where you do some shortcut command and then start typing the name of the button, and hit Enter to push the button...?

    Read the article

  • Handling Errors In PHP When Using MVC

    - by James Jeffery
    I've been using Codeigniter a lot recently, but one thing that gets on my nerves is handling errors and displaying them to the user. I've never been good at handling errors without it getting messy. My main concern is when returning errors to the user. Is it good practice to use exceptions and throw/catch exceptions rather than returning 0 or 1 from functions and then using if/else to handle the errors. Thus, making it easier to inform the user about the issue. I tend to go away from exceptions. My Java tutor at university some years ago told me "exceptions shouldn't be used in production code it's more for debugging". I get the feeling he was lying. But, an example, I have code that adds a user to a database. During the process more than 1 thing could go wrong, such as a database issue, a duplicate entry, a server issue, etc. When an issue happens during registration the user needs to know about it. What's the best way to handle errors in PHP, keeping in mind that I'm using an MVC framework.

    Read the article

  • Share an ATI Catalyst Profile across several/all users

    - by CJM
    We've set up some hotkeys in the ATI Catalyst Control Panel on a communal machine, and we're trying to share this among a number of users, possibly all users. The profile is stored as MyProfile.xml in the Local Settings tree; the profile can be loaded through a shortcut, but unfortunately the Profilename switch simply expects the name of the profile rather than the path to the XML file. And while we can copy the profile to appropriate folders under other users accounts, the mere presence of the XML isn't enough to make the profile available to the user. A quick scan of the registry didn't reveal much, though I suspect there is something in there to be aware of. Any ideas on how we can share this profile?

    Read the article

  • Safari MAC proxy bypass for IPv6

    - by rhi
    I'm a first-time n00b on Mac ; (but have been doing computers since before PC's). This Mac has 2 VLANs, vlan0 in IPv4, vlan1 in IPv6. Safari can surf via IPv4 squid proxy OK. Safari can surf via IPv6 natively, if I switch off the proxy, OK. How do I set up the Settings - Network - Interface - Advanced - Proxies to "bypass" IPv6 ? Current Settings include variations along the lines of ... "*.local, 10.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12 , ::, ipv6 " but don't work as expected. I want Safari to go out on its own with IPv6, not crash at the proxy with "malformed URL" Thanks, //rhi

    Read the article

  • New Enhancements for InnoDB Memcached

    - by Calvin Sun
    In MySQL 5.6, we continued our development on InnoDB Memcached and completed a few widely desirable features that make InnoDB Memcached a competitive feature in more scenario. Notablely, they are 1) Support multiple table mapping 2) Added background thread to auto-commit long running transactions 3) Enhancement in binlog performance  Let’s go over each of these features one by one. And in the last section, we will go over a couple of internally performed performance tests. Support multiple table mapping In our earlier release, all InnoDB Memcached operations are mapped to a single InnoDB table. In the real life, user might want to use this InnoDB Memcached features on different tables. Thus being able to support access to different table at run time, and having different mapping for different connections becomes a very desirable feature. And in this GA release, we allow user just be able to do both. We will discuss the key concepts and key steps in using this feature. 1) "mapping name" in the "get" and "set" command In order to allow InnoDB Memcached map to a new table, the user (DBA) would still require to "pre-register" table(s) in InnoDB Memcached “containers” table (there is security consideration for this requirement). If you would like to know about “containers” table, please refer to my earlier blogs in blogs.innodb.com. Once registered, the InnoDB Memcached will then be able to look for such table when they are referred. Each of such registered table will have a unique "registration name" (or mapping_name) corresponding to the “name” field in the “containers” table.. To access these tables, user will include such "registration name" in their get or set commands, in the form of "get @@new_mapping_name.key", prefix "@@" is required for signaling a mapped table change. The key and the "mapping name" are separated by a configurable delimiter, by default, it is ".". So the syntax is: get [@@mapping_name.]key_name set [@@mapping_name.]key_name  or  get @@mapping_name set @@mapping_name Here is an example: Let's set up three tables in the "containers" table: The first is a map to InnoDB table "test/demo_test" table with mapping name "setup_1" INSERT INTO containers VALUES ("setup_1", "test", "demo_test", "c1", "c2", "c3", "c4", "c5", "PRIMARY");  Similarly, we set up table mappings for table "test/new_demo" with name "setup_2" and that to table "mydatabase/my_demo" with name "setup_3": INSERT INTO containers VALUES ("setup_2", "test", "new_demo", "c1", "c2", "c3", "c4", "c5", "secondary_index_x"); INSERT INTO containers VALUES ("setup_3", "my_database", "my_demo", "c1", "c2", "c3", "c4", "c5", "idx"); To switch to table "my_database/my_demo", and get the value corresponding to “key_a”, user will do: get @@setup_3.key_a (this will also output the value that corresponding to key "key_a" or simply get @@setup_3 Once this is done, this connection will switch to "my_database/my_demo" table until another table mapping switch is requested. so it can continue issue regular command like: get key_b  set key_c 0 0 7 These DMLs will all be directed to "my_database/my_demo" table. And this also implies that different connections can have different bindings (to different table). 2) Delimiter: For the delimiter "." that separates the "mapping name" and key value, we also added a configure option in the "config_options" system table with name of "table_map_delimiter": INSERT INTO config_options VALUES("table_map_delimiter", "."); So if user wants to change to a different delimiter, they can change it in the config_option table. 3) Default mapping: Once we have multiple table mapping, there should be always a "default" map setting. For this, we decided if there exists a mapping name of "default", then this will be chosen as default mapping. Otherwise, the first row of the containers table will chosen as default setting. Please note, user tables can be repeated in the "containers" table (for example, user wants to access different columns of the table in different settings), as long as they are using different mapping/configure names in the first column, which is enforced by a unique index. 4) bind command In addition, we also extend the protocol and added a bind command, its usage is fairly straightforward. To switch to "setup_3" mapping above, you simply issue: bind setup_3 This will switch this connection's InnoDB table to "my_database/my_demo" In summary, with this feature, you now can direct access to difference tables with difference session. And even a single connection, you can query into difference tables. Background thread to auto-commit long running transactions This is a feature related to the “batch” concept we discussed in earlier blogs. This “batch” feature allows us batch the read and write operations, and commit them only after certain calls. The “batch” size is controlled by the configure parameter “daemon_memcached_w_batch_size” and “daemon_memcached_r_batch_size”. This could significantly boost performance. However, it also comes with some disadvantages, for example, you will not be able to view “uncommitted” operations from SQL end unless you set transaction isolation level to read_uncommitted, and in addition, this will held certain row locks for extend period of time that might reduce the concurrency. To deal with this, we introduce a background thread that “auto-commits” the transaction if they are idle for certain amount of time (default is 5 seconds). The background thread will wake up every second and loop through every “connections” opened by Memcached, and check for idle transactions. And if such transaction is idle longer than certain limit and not being used, it will commit such transactions. This limit is configurable by change “innodb_api_bk_commit_interval”. Its default value is 5 seconds, and minimum is 1 second, and maximum is 1073741824 seconds. With the help of such background thread, you will not need to worry about long running uncommitted transactions when set daemon_memcached_w_batch_size and daemon_memcached_r_batch_size to a large number. This also reduces the number of locks that could be held due to long running transactions, and thus further increase the concurrency. Enhancement in binlog performance As you might all know, binlog operation is not done by InnoDB storage engine, rather it is handled in the MySQL layer. In order to support binlog operation through InnoDB Memcached, we would have to artificially create some MySQL constructs in order to access binlog handler APIs. In previous lab release, for simplicity consideration, we open and destroy these MySQL constructs (such as THD) for each operations. This required us to set the “batch” size always to 1 when binlog is on, no matter what “daemon_memcached_w_batch_size” and “daemon_memcached_r_batch_size” are configured to. This put a big restriction on our capability to scale, and also there are quite a bit overhead in creating destroying such constructs that bogs the performance down. With this release, we made necessary change that would keep MySQL constructs as long as they are valid for a particular connection. So there will not be repeated and redundant open and close (table) calls. And now even with binlog option is enabled (with innodb_api_enable_binlog,), we still can batch the transactions with daemon_memcached_w_batch_size and daemon_memcached_r_batch_size, thus scale the write/read performance. Although there are still overheads that makes InnoDB Memcached cannot perform as fast as when binlog is turned off. It is much better off comparing to previous release. And we are continuing optimize the solution is this area to improve the performance as much as possible. Performance Study: Amerandra of our System QA team have conducted some performance studies on queries through our InnoDB Memcached connection and plain SQL end. And it shows some interesting results. The test is conducted on a “Linux 2.6.32-300.7.1.el6uek.x86_64 ix86 (64)” machine with 16 GB Memory, Intel Xeon 2.0 GHz CPU X86_64 2 CPUs- 4 Core Each, 2 RAID DISKS (1027 GB,733.9GB). Results are described in following tables: Table 1: Performance comparison on Set operations Connections 5.6.7-RC-Memcached-plugin ( TPS / Qps) with memcached-threads=8*** 5.6.7-RC* X faster Set (QPS) Set** 8 30,000 5,600 5.36 32 59,000 13,000 4.54 128 68,000 8,000 8.50 512 63,000 6.800 9.23 * mysql-5.6.7-rc-linux2.6-x86_64 ** The “set” operation when implemented in InnoDB Memcached involves a couple of DMLs: it first query the table to see whether the “key” exists, if it does not, the new key/value pair will be inserted. If it does exist, the “value” field of matching row (by key) will be updated. So when used in above query, it is a precompiled store procedure, and query will just execute such procedures. *** added “–daemon_memcached_option=-t8” (default is 4 threads) So we can see with this “set” query, InnoDB Memcached can run 4.5 to 9 time faster than MySQL server. Table 2: Performance comparison on Get operations Connections 5.6.7-RC-Memcached-plugin ( TPS / Qps) with memcached-threads=8 5.6.7-RC* X faster Get (QPS) Get 8 42,000 27,000 1.56 32 101,000 55.000 1.83 128 117,000 52,000 2.25 512 109,000 52,000 2.10 With the “get” query (or the select query), memcached performs 1.5 to 2 times faster than normal SQL. Summary: In summary, we added several much-desired features to InnoDB Memcached in this release, allowing user to operate on different tables with this Memcached interface. We also now provide a background commit thread to commit long running idle transactions, thus allow user to configure large batch write/read without worrying about large number of rows held or not being able to see (uncommit) data. We also greatly enhanced the performance when Binlog is enabled. We will continue making efforts in both performance enhancement and functionality areas to make InnoDB Memcached a good demo case for our InnoDB APIs. Jimmy Yang, September 29, 2012

    Read the article

< Previous Page | 416 417 418 419 420 421 422 423 424 425 426 427  | Next Page >