Search Results

Search found 7592 results on 304 pages for 'dev'.

Page 56/304 | < Previous Page | 52 53 54 55 56 57 58 59 60 61 62 63  | Next Page >

  • external SCSI tape drive DAT 72 problem Solaris 10

    - by Hassan
    Hi all, I have solaris 10 sparc running and working very well but i have problem with external SCSI tape drive DAT 72 problem it seems to me the tape drive is manufactured by SUN microsystems when i ran mt -f /dev/rmt/0 status it reveals the following output bash-3.00# mt -f /dev/rmt/0 status /dev/rmt/0: No such file or directory when i ran ls -l it reveals the following output ls -l /dev/rmt/0 lrwxrwxrwx 1 root root 43 Sep 20 2006 /dev/rmt/0 -> ../../devices/pci@8,600000/scsi@1,1/st@3,0: it seems to me everything is okay SCSI cable is connected properly to Tape device and to server as well the tape has SCSI termination dongle as well and connected properly to Tape device as well any ideas would be a great assist Thanks in advance

    Read the article

  • Mplayer can't play *.wmv file

    - by Jimmy
    I have a problem when I use the mplayer to play *.wmv file on my ubuntu11.10. There are some error messages here. Could anyone can help me solve this problem. I use some keyword to search in Gooele, but I can't find the answer. Thank you. Playing testmovie.wmv. ASF file format detected. [asfheader] Audio stream found, -aid 1 [asfheader] Video stream found, -vid 2 VIDEO: [WMV3] 1280x720 24bpp 1000.000 fps 4000.0 kbps (488.3 kbyte/s) Load subtitles in ./ open: No such file or directory [ MGA] Couldn't open: /dev/mga_vid open: No such file or directory [MGA] Couldn't open: /dev/mga_vid [VO_TDFXFB] Can't open /dev/fb0: Permission denied. [VO_3DFX] Unable to open /dev/3dfx. [vdpau] Error when calling vdp_device_create_x11: 1 ========================================================================== Opening video decoder: [dmo] DMO video codecs DMO dll supports VO Optimizations 0 1 DMO dll might use previous sample when requested MPlayer interrupted by signal 11 in module: init_video_codec I am using xv as my video driver.

    Read the article

  • After re-installing ubuntu 13.10, stuck at GRUB Rescue, Boot-Repair didn't work!

    - by user205691
    Because i could not get the WiFi login work, i thought i will reinstall ubuntu, with internet connection to have updated drivers for wireless & graphics etc. I have deleted earlier linux partitions usings gparted and re-installed ubuntu 13.10, exactly following the same steps as i did earlier, making a 100GB /home on dev/sda and pointing root to /dev/sdb (SSD) and swap on dev/sda/ . Installing boot on /dev/sdb. But, somehow i think the grub is either corrupted or removed because i am unable to boot the laptop to any OS now. I get the following message: "no such device" xxxxx followed by huge HEX number GRUB rescue when i type ls on Grub rescue prompt, i can see hd0 & hd1, but thats about it. i tried Boot-repair but it is unable to fix the problem. The following log is generated via boot-repair create log: Boot-repair log I am unable to boot into windows or linux at the moment and need help to fix the grub so i can boot !!

    Read the article

  • How to add a new entry to fstab?

    - by Roei
    I mount a device mount /dev/xvdf /mnt/mongo and verify the mount using df-h: Filesystem Size Used Avail Use% Mounted on /dev/xvda1 7.9G 955M 6.9G 12% / tmpfs 299M 44K 299M 1% /dev/shm /dev/xvdf 20G 589M 19G 4% /mnt/mongo But now I'm trying to figure out how to make it auto mount on boot. I understand I need to add a new entry to /etc/fstab, so I perform: $ sed -i '$ a\/dev/xvdf /mnt/mongo xfs defaults 1 1' /etc/fstab But, after reboot, it seems that the auto mount didn't work. The device didn't appear in the df -h list. Should I not use the sed to add the entry? Is the entry I entered incorrect?

    Read the article

  • Adding git branch to bash prompt on snow leopard

    - by crayment
    I am using this: $(__git_ps1 '(%s)') It works however it does not update when I change directories or checkout a new branch. I also have this alias: alias reload='. ~/.bash_profile' Sample run: user@machine:~/dev/rails$cd git_folder/ user@machine:~/dev/rails/git_folder$reload user@machine:~/dev/rails/git_folder(test)$git checkout master Switched to branch 'master' user@machine:~/dev/rails/git_folder(test)$reload user@machine:~/dev/rails/git_folder(master)$ As you can see it is being set correctly but only if I reload bash_profile. I have wasted way to much time on this. I am using bash on snow leopard. Please help!

    Read the article

  • /tmp/ read-only

    - by Chirag
    When I'm trying delete some of the old eaccelerator files it gives me following errors rm: cannot remove `/tmp/eaccelerator/7/2/eaccelerator-0502.02065984': Read-only file system What can I do it fix it? Filesystem Size Used Avail Use% Mounted on /dev/sda2 226G 127G 88G 60% / /dev/sdc1 227G 102G 114G 48% /disk1 /dev/sda1 99M 18M 77M 19% /boot tmpfs 4.0G 0 4.0G 0% /dev/shm /dev/sdb1 459G 182G 255G 42% /home4 /usr/tmpDSK 485M 325M 135M 71% /tmp That's my output from the server. Also what commands can I use to unmount and mount it? And should I do it while my web server is running?

    Read the article

  • Unmounted disk still spins up regularly

    - by Erik Johansson
    I just added a disk, with partitions but none of them are mounted. The disk will still spin up every now and then. it goes like this: ### disk spins up hdparm -Y /dev/sdb;date /dev/sdb: issuing sleep command 9 feb 2011 23.37.08 CET ### disk spins up hdparm -Y /dev/sdb;date /dev/sdb: issuing sleep command 9 feb 2011 23.46.12 CET Also it always spins up when I shut down the computer. Any tips are welcome, e.g. how can I figure out which process is accessing the disk, are there any daemons doing this? I know it isn't a cron job.

    Read the article

  • how can I fix error: hd0 out of disk?

    - by rux
    I am running Ubuntu 12.04 on a netbook - Acer AS 1410. After a download session, I restarted the computer and it said: error: hd0 out of disk. Press any key to continue... I pressed everything, but it's just frozen there. Any idea what's wrong with it and what I can do to fix it? I haven't been able to run my computer at all since it's frozen like that. Help please! I booted the live cd and ran sudo fdisk -lu into terminal, and here's what it gave me: Disk /dev/sda: 60.0 GB, 60022480896 bytes 255 heads, 63 sectors/track, 7297 cylinders, total 117231408 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x9a696263 Device Boot Start End Blocks Id System /dev/sda3 2048 117229567 58613760 5 Extended /dev/sda5 * 71647232 109039615 18696192 83 Linux /dev/sda6 109041664 117229567 4093952 82 Linux swap / Solaris /dev/sda7 4096 71645183 35820544 83 Linux Partition table entries are not in disk order I am somewhat of a beginner in this, so don't know what this means. any ideas? Thanks!

    Read the article

  • Where did my free space go?

    - by Ari B. Friedman
    I have a storage drive (2TB) and an OS drive (90GB SSD). I've run out of space on the OS drive: /$ df -h Filesystem Size Used Avail Use% Mounted on /dev/sdb1 72G 72G 0 100% / udev 5.9G 12K 5.9G 1% /dev tmpfs 2.4G 1.2M 2.4G 1% /run none 5.0M 0 5.0M 0% /run/lock none 5.9G 428K 5.9G 1% /run/shm /dev/sda1 1.9T 639G 1.2T 37% /media/StorageDrive So be it. But when I attempt to figure out where the space has gone, I cannot find it anything remotely approaching the capacity of the drive: /$ sudo du -h -d 1 du: cannot access `./media/StorageDrive/home/ari/.gvfs': Permission denied 675G ./media 2.3G ./var 0 ./proc 7.0M ./tmp 27M ./boot 4.0K ./lib64 12K ./dev 44M ./home 16K ./lost+found 8.0M ./sbin 223M ./lib 4.0K ./selinux 1.4M ./run 140K ./root 8.8M ./bin 4.0K ./mnt 38M ./etc 8.0K ./srv 4.8G ./usr 65M ./opt 0 ./sys 682G . Note the difference between the total (682G) and the mounted drives in /media (675G) is only about 9G. How are 72G being used? Where is this dark matter hiding?

    Read the article

  • ntfsresize volume and size information

    - by antonio
    I am going to resize my sda2 NTFS partition. When gathering info with ntfsresize, I get: ntfsresize --info /dev/sda2 ntfsresize v2013.1.13 (libntfs-3g) Device name : /dev/sda2 NTFS volume version: 3.1 Cluster size : 4096 bytes Current volume size: 21999993344 bytes (22000 MB) Current device size: 23622320128 bytes (23623 MB) Checking filesystem consistency ... Accounting clusters ... Space in use : 10673 MB (48.5%) Collecting resizing constraints ... You might resize at 10672590848 bytes or 10673 MB (freeing 11327 MB). Please make a test run using both the -n and -s options before real resizing! Can you tell me what is the difference between volume and device size? As for device size, 23622320128 bytes / 1000^2 = 23622.3 MB. Why is 23623 MB reported instead of 23622? Note that parted confirms this value: parted /dev/sda2 unit MB p Model: Unknown (unknown) Disk /dev/sda2: 23622MB Sector size (logical/physical): 512B/512B Partition Table: loop Disk Flags: Number Start End Size File system Flags 1 0.00MB 23622MB 23622MB ntfs

    Read the article

  • SSD Tweaks for Ubuntu 12.04

    - by Mustafa Erdinç
    I need to tweak my Dell XPS 13z SSD for maximum performance and life cycle than I read the solutions explained here, but it is for 11.10 and my fstab is different. For now my fstab is looks like this: proc /proc proc nodev,noexec,nosuid 0 0 # / was on /dev/sda1 during installation UUID=abf5ce9e-bdb7-4b2f-a7bd-bbd9efa72a98 / ext4 errors=remount-ro 0 1 # /home was on /dev/sda2 during installation UUID=491427b2-7482-4483-b6eb-7c564b991aff /home ext4 defaults 0 2 # swap was on /dev/sda3 during installation #UUID=7551000d-e708-4e0f-9fd2-9f93119f63fb none swap sw 0 0 /dev/mapper/cryptswap1 none swap sw 0 0 tmpfs /tmp tmpfs mode=1777 And my rc.local is looks like this: echo noop > /sys/block/sda/queue/scheduler echo deadline > /sys/block/sda/queue/scheduler echo 1 > /sys/block/sda/queue/iosched/fifo_batch exit 0 Do you have any suggestions, what should I do? Regards

    Read the article

  • Unable to access other Volume in Vaio E series

    - by Rahul Ravi Kumar Shah
    Error mounting /dev/sda6 at /media/ravi/New Volume: mount -t "ntfs" -o "uhelper=udisks2,nodev,nosuid,uid=1000,gid=1000,dmask=0077,fmask=0177" "/dev/sda6" "/media/ravi/New Volume" Exited with: non-zero exit status 14: The disk contains an unclean file system (0, 0). Metadata kept in Windows cache, refused to mount. Failed to mount '/dev/sda6': Operation not permitted The NTFS partition is in an unsafe state. Please resume and shutdown Windows fully (no hibernation or fast restarting), or mount the volume read-only with the 'ro' mount option.

    Read the article

  • gsm-ussd gives device busy or error (100)

    - by mydoghasworms
    I am using gsm-ussd to try and query my data balance from my 3G modem. When I issue the commands gsm-ussd -m /dev/ttyUSB0 '*188#' or gsm-ussd -m /dev/ttyUSB2 '*188#' I get either "Device or resource busy" (when it is in used and connected) or "Unknown error (100)". My device (Huawei E173) seems to create 3 devices in /dev, namely ttyUSB0, ttyUSB1 and ttyUSB2. None of them work, and ttyUSB1 gives a somewhat different problem, as it just give the following message: * Wrong modem device (use -m <dev>)? * Modem broken (no reaction to AT)

    Read the article

  • Create a Remote Git Repository from an Existing XCode Repository

    - by codeWithoutFear
    Introduction Distributed version control systems (VCS’s), like Git, provide a rich set of features for managing source code.  Many development tools, including XCode, provide built-in support for various VCS’s.  These tools provide simple configuration with limited customization to get you up and running quickly while still providing the safety net of basic version control. I hate losing (and re-doing) work.  I have OCD when it comes to saving and versioning source code.  Save early, save often, and commit to the VCS often.  I also hate merging code.  Smaller and more frequent commits enable me to minimize merge time and effort as well. The work flow I prefer even for personal exploratory projects is: Make small local changes to the codebase to create an incrementally improved (and working) system. Commit these changes to the local repository.  Local repositories are quick to access, function even while offline, and provides the confidence to continue making bold changes to the system.  After all, I can easily recover to a recent working state. Repeat 1 & 2 until the codebase contains “significant” functionality and I have connectivity to the remote repository. Push the accumulated changes to the remote repository.  The smaller the change set, the less likely extensive merging will be required.  Smaller is better, IMHO. The remote repository typically has a greater degree of fault tolerance and active management dedicated to it.  This can be as simple as a network share that is backed up nightly or as complex as dedicated hardware with specialized server-side processing and significant administrative monitoring. XCode’s out-of-the-box Git integration enables steps 1 and 2 above.  Time Machine backups of the local repository add an additional degree of fault tolerance, but do not support collaboration or take advantage of managed infrastructure such as on-premises or cloud-based storage. Creating a Remote Repository These are the steps I use to enable the full workflow identified above.  For simplicity the “remote” repository is created on the local file system.  This location could easily be on a mounted network volume. Create a Test Project My project is called HelloGit and is located at /Users/Don/Dev/HelloGit.  Be sure to commit all outstanding changes.  XCode always leaves a single changed file for me after the project is created and the initial commit is submitted. Clone the Local Repository We want to clone the XCode-created Git repository to the location where the remote repository will reside.  In this case it will be /Users/Don/Dev/RemoteHelloGit. Open the Terminal application. Clone the local repository to the remote repository location: git clone /Users/Don/Dev/HelloGit /Users/Don/Dev/RemoteHelloGit Convert the Remote Repository to a Bare Repository The remote repository only needs to contain the Git database.  It does not need a checked out branch or local files. Go to the remote repository folder: cd /Users/Don/Dev/RemoteHelloGit Indicate the repository is “bare”: git config --bool core.bare true Remove files, leaving the .git folder: rm -R * Remove the “origin” remote: git remote rm origin Configure the Local Repository The local repository should reference the remote repository.  The remote name “origin” is used by convention to indicate the originating repository.  This is set automatically when a repository is cloned.  We will use the “origin” name here to reflect that relationship. Go to the local repository folder: cd /Users/Don/Dev/HelloGit Add the remote: git remote add origin /Users/Don/Dev/RemoteHelloGit Test Connectivity Any changes made to the local Git repository can be pushed to the remote repository subject to the merging rules Git enforces. Create a new local file: date > date.txt /li> Add the new file to the local index: git add date.txt Commit the change to the local repository: git commit -m "New file: date.txt" Push the change to the remote repository: git push origin master Now you can save, commit, and push/pull to your OCD hearts’ content! Code without fear! --Don

    Read the article

  • Mounting FTP as filesystem in debian using curlftpfs

    - by Karel Bílek
    I am trying to mount a FTP as filesystem in debian using curlftpfs. What I get after running curlftpfs -o allow_other username:[email protected] /mnt/myftp/ is just: fuse: failed to open /dev/fuse: Permission denied even when run as root. What am I doing wrong? (curlftpfs is in version curlftpfs 0.9.2 libcurl/7.21.0 fuse/2.8) edit: When I write ls -lah /dev/fuse, I see crw-rw---- 1 root fuse 10, 229 Apr 9 00:34 /dev/fuse ...but even when I add both myself and user root to group fuse, neither me (as a user) or user root can mount ftp, I still see fuse: failed to open /dev/fuse: Permission denied edit2: Even if I write this fairly insecure and crazy line: sudo chmod a+rwx /dev/fuse I still get the permission denied message. Which permissions could be denied? edit3: I forgot to mention I am on VPS with OpenVZ. I thought that there is no issue with this, but apparently, there is! I am adding the resolution as the answer.

    Read the article

  • Dualbooting Win7 and Gentoo, error

    - by Tommy Jakobsen
    Hello I'm trying to setup a dualboot with Gentoo Linux and Windows 7. Heres my partitions: /dev/sda1 /boot partition, ext2 /dev/sda2 win7 partition, ntfs /dev/sda3 swap partition, linux swap /dev/sda4 root partition, btrfs Using Grub, I can boot into Gentoo, but when I'm choosing to boot Windows 7, nothing happens. It just writes the Grub options for that choice, and then it hangs. grub.conf: default 0 timeout 30 title Gentoo root (hd0,0) kernel /boot/kernel-x86_64-2.6.31 root=/dev/sda4 title Windows rootnoverify (hd0,1) makeactive chainloader +1 Any ideas? Help will be much appreciated!

    Read the article

  • Can't access Windos 7 OS in Ubuntu

    - by Myers
    When I try and Access my Windows 7 OS I get the following memo and I have no idea what to make of the code. Error mounting /dev/sda2 at /media/name/Windows7_OS: Command-line `mount -t "ntfs" -o "uhelper=udisks2,nodev,nosuid,uid=1000,gid=1000,dmask=0077,fmask=0177" "/dev/sda2" "/media/name/Windows7_OS"' exited with non-zero exit status 13: ntfs_attr_pread_i: ntfs_pread failed: Input/output error Failed to read NTFS $Bitmap: Input/output error NTFS is either inconsistent, or there is a hardware fault, or it's a SoftRAID/FakeRAID hardware. In the first case run chkdsk /f on Windows then reboot into Windows twice. The usage of the /f parameter is very important! If the device is a SoftRAID/FakeRAID then first activate it and mount a different device under the /dev/mapper/ directory, (e.g. /dev/mapper/nvidia_eahaabcc1). Please see the 'dmraid' documentation for more details. What should I do ?

    Read the article

  • Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

    - by Siddharth
    My mysql installation was screwed up. I uninstalled and installed it multiple times. But I kept getting a hang or a error "cant connect". I now finally have it running with sudo -u mysql mysqld. How do I get mysqld to run at startup, and why do I need to run it as user mysql. Can I change it to run as root ? Edit Filesystem Size Used Avail Use% Mounted on /dev/sda1 230G 5.5G 213G 3% / none 2.0G 268K 2.0G 1% /dev none 2.0G 3.2M 2.0G 1% /dev/shm none 2.0G 92K 2.0G 1% /var/run none 2.0G 0 2.0G 0% /var/lock none 2.0G 0 2.0G 0% /lib/init/rw /dev/sda5 230G 20G 199G 9% /home

    Read the article

  • Corrupted File System on Dual HD/Dual Boot System

    - by Troy
    I have the following system set up: 2 drives, 1 TB each, one with Windows 7 and the other with what used to be Ubuntu 11.x After an update my system became corrupted and now the file system is apparently corrupt. The Ubuntu drive is /dev/sda2, the Windows 7 is /dev/sda1. I've tried fsck /dev/sda2 -t ext3 and that does nothing. I'm not sure what to do at this point. I don't even mind wiping the /dev/sda2 drive clean, so it will at least accept a completely new installation of Ubuntu. I just don't know how to do that. Please help. Thank you

    Read the article

  • 3D BSP rendering for maps made in 2d platform style

    - by Dev Joy
    I wish to render a 3D map which is always seen from top, camera is in sky and always looking at earth. Sample of a floor layout: I don't think I need complex structures like BSP trees to render them. I mean I can divide the map in grids and render them like done in 2D platform games. I just want to know if this is a good idea and what may go wrong if I don't choose a BSP tree rendering here. Please also mention is any better known rendering techniques are available for such situations.

    Read the article

  • Unable to mount external hard drive - Damaged file system and MFT

    - by Khalifa Abbas Lame
    I get the following error when i try to mount my external hard drive. UNABLE TO MOUNT Error mounting /dev/sdc1 at /media/khalibloo/Khalibloo2: Command-line `mount -t "ntfs" -o "uhelper=udisks2,nodev,nosuid,uid=1000,gid=1000,dmask=0077,fmask=0177" "/dev/sdc1" "/media/khalibloo/Khalibloo2"' exited with non-zero exit status 13: ntfs_attr_pread_i: ntfs_pread failed: Input/output error Failed to read of MFT, mft=6 count=1 br=-1: Input/output error Failed to open inode FILE_Bitmap: Input/output error Failed to mount '/dev/sdc1': Input/output error NTFS is either inconsistent, or there is a hardware fault, or it's a SoftRAID/FakeRAID hardware. In the first case run chkdsk /f on Windows then reboot into Windows twice. The usage of the /f parameter is very important! If the device is a SoftRAID/FakeRAID then first activate it and mount a different device under the /dev/mapper/ directory, (e.g. /dev/mapper/nvidia_eahaabcc1). Please see the 'dmraid' documentation for more details. It doesn't mount on windows either: "I/O Device error" it's an ntfs hard drive with a single partition Of course, i tried chkdsk /f. it reported several file segments as unreadable, but didn't say whether it fixed them or not (apparently not). also tried with the /b flag. ntfsfix reported the volume as corrupt. TestDisk was able to fix a small error with the partition table by adding the "80" flag for the active (only) partition. TestDisk also confirmed that the boot sector was fine and it matched the backup. However, when attempting to repair the MFT, it couldn't read the MFT. It also couldn't list the files on the hard drive. It says file system may be damaged. Active@ also shows that MFT is missing or corrupt. So how do i fix the file system? or the MFT?

    Read the article

  • Unable to access “105 GB Volume”

    - by user170924
    Error mounting /dev/sda2 at /media/fehr/8CBE6431BE6415CC: Command-line `mount -t "ntfs" -o "uhelper=udisks2,nodev,nosuid,uid=1000,gid=1000,dmask=0077,fmask=0177" "/dev/sda2" "/media/fehr/8CBE6431BE6415CC"' exited with non-zero exit status 14: Windows is hibernated, refused to mount. Failed to mount '/dev/sda2': Operation not permitted The NTFS partition is in an unsafe state. Please resume and shutdown Windows fully (no hibernation or fast restarting), or mount the volume read-only with the 'ro' mount option.

    Read the article

  • Managing Kindle Fire with on 12.04 via Micro-USB

    - by pirtle
    To begin, I have read both Is there a way to get a Kindle Fire to work with 12.04? and How can I transfer files to a Kindle Fire with a Micro-USB cable? My problem is that I am unable to mount my Kindle Fire in order to add books to it. I have installed calibre, but it is unable to manage any devices until the computer itself has recognized it. The latter post had an excellent answer (provided by @jeremiah) that was making some progress. Unfortunately, I think I don't know enough about the -t flag used with mount. This is what I've done... Ran dmesg to locate the device: [ 3.920886] sd 6:0:0:0: [sdb] Attached SCSI removable disk Confirmed it's location: $ sudo ls -l /dev/disk/by-id lrwxrwxrwx 1 root root 9 Aug 18 15:52 usb-Amazon_Kindle_3C6C002600000001-0:0 -> ../../sdb So we know that my Kindle is recognized on /dev/sdb. I then used the mount command suggested by @jeremiah: $ sudo mount -t ext3 /dev/sdb/ /mnt/kindle/ mount: no medium found on /dev/sdb The same error occurs for sudo mount /dev/sdb /mnt/kindle. Note: I have created the 'kindle' directory in 'mnt' Any suggestions?

    Read the article

  • Why is my partition claiming to be out of space?

    - by Dr C
    My file system claims to only have 4.5 GB left. While my OS (a folder with in file system) still has 75.2 GB left. I put something near 130 GB on my Ubuntu partition, it should have enough space. I confirmed that I can put things in OS that exceed the space in available file systems, but that makes no sense, OS is listed as a folder inside of file system, why would it have more space than it's parent folder? What is going on? Here is the output of df: Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda5 113773200 103741440 4252408 97% / udev 2004600 4 2004596 1% /dev tmpfs 804756 848 803908 1% /run none 5120 0 5120 0% /run/lock none 2011884 436 2011448 1% /run/shm /dev/sda2 127526908 54045584 73481324 43% /media/OS /dev/sda3 39144708 89016 39055692 1% /media/DATA`

    Read the article

  • Crime Scene Investigation: SQL Server

    - by Rodney Landrum
    “The packages are running slower in Prod than they are in Dev” My week began with this simple declaration from one of our lead BI developers, quickly followed by an emailed spreadsheet demonstrating that, over 5 executions, an extensive ETL process was running average 630 seconds faster on Dev than on Prod. The situation needed some scientific investigation to determine why the same code, the same data, the same schema would yield consistently slower results on a more powerful server. Prod had yet to be officially christened with a “Go Live” date so I had the time, and having recently been binge watching CSI: New York, I also had the inclination. An inspection of the two systems, Prod and Dev, revealed the first surprise: although Prod was indeed a “bigger” system, with double the amount of RAM of Dev, the latter actually had twice as many processor cores. On neither system did I see much sign of resources being heavily taxed, while the ETL process was running. Without any real supporting evidence, I jumped to a conclusion that my years of performance tuning should have helped me avoid, and that was that the hardware differences explained the better performance on Dev. We spent time setting up a Test system, similarly scoped to Prod except with 4 times the cores, and ported everything across. The results of our careful benchmarks left us truly bemused; the ETL process on the new server was slower than on both other systems. We burned more time tweaking server configurations, monitoring IO and network latency, several times believing we’d uncovered the smoking gun, until the results of subsequent test runs pitched us back into confusion. Finally, I decided, enough was enough. Hadn’t I learned very early in my DBA career that almost all bottlenecks were caused by code and database design, not hardware? It was time to get back to basics. With over 100 SSIS packages and hundreds of queries, each handling specific tasks such as file loads, bulk inserts, transforms, logging, and so on, the task seemed formidable. And yet, after barely an hour spent with Profiler, Extended Events, and wait statistics DMVs, I had a lead in the shape of a query that joined three tables, containing millions of rows, returned 3279 results, but performed 239K logical reads. As soon as I looked at the execution plans for the query in Dev and Test I saw the culprit, an implicit conversion warning on a join predicate field that was numeric in one table and a varchar(50) in another! I turned this information over to the BI developers who quickly resolved the data type mismatches and found and fixed “several” others as well. After the schema changes the same query with the same databases ran in under 1 second on all systems and reduced the logical reads down to fewer than 300. The analysis also revealed that on Dev, the ETL task was pulling data across a LAN, whereas Prod and Test were connected across slower WAN, in large part explaining why the same process ran slower on the latter two systems. Loading the data locally on Prod delivered a further 20% gain in performance. As we progress through our DBA careers we learn valuable lessons. Sometimes, with a project deadline looming and pressure mounting, we choose to forget them. I was close to giving into the temptation to throw more hardware at the problem. I’m pleased at least that I resisted, though I still kick myself for not looking at the code on day one. It can seem a daunting prospect to return to the fundamentals of the code so close to roll out, but with the right tools, and surprisingly little time, you can collect the evidence that reveals the true problem. It is a lesson I trust I will remember for my next 20 years as a DBA, if I’m ever again tempted to bypass the evidence.

    Read the article

< Previous Page | 52 53 54 55 56 57 58 59 60 61 62 63  | Next Page >