http://blog.sina.com.cn/pengyuwei[订阅]
个人资料
分类
    内容读取中…
评论
读取中...
访客
读取中...
好友
读取中...
博文
刚才用google,发现所有的网站都提示含有恶意软件


看来google也会出bug。
关于服务器的搭建,出现了两种意见,我推荐SVN,主要推荐SVN的迁移、重命名等等强于CVS的功能,另外的同事建议还是用CVS,因为CVS是Eclipse集成的支持,不需要另外安装软件。
项目代码的安排,也出现了分歧,我建议所有的项目都放在一个盘上,一个项目一个模块,项目内再细分子目录。另外的同事建议对硬盘分区,一个项目一个分区,而我则认为分区的想法完全没法接受,双方各执己见,最后也没达成一致,只能再议。
在我看来,分区简直就是一个隐患,因为分区分多大?万一分区满了怎么办?而且项目变化的时候也不可能再增加分区,简直是糟糕的不行的方法。
而在同事看来,分区是最好的方法,每个项目独立占用一个分区,独立性非常好。
不知道这种情况,最终应该如何达成一致。
现象:
1.导入的安全类投诉某些会直接变为未及时处理;(经检查,这些投诉并不符合未及时处理的条件)
2.连续导入某个固定的安全类投诉文件,数量会增加(实际应不变)
原因:
经检查,是程序没有查询到显示标量导致执行了插入新数据而不是更新导致。
显示标量查询不到是因为SQL语句出错“IPSTART列名不存在”,出错是因为要查询的字段在数据库里不存在。
经检查:
1.查询使用的SQLServer数据库(第三方系统的数据库)中不存在此字段(SPEIP表的IPSTART和IPEND字段);
2.我们自己系统的本地Oracle数据库存在一个几乎一样的SPEIP表,但其中存在代码中对应的IPSTART和IPEND字段;
3.实地环境中的配置文件中配置的是不使用本地数据库而是使用远程SQLServer数据库中的SPEIP表;
4.如果把配置文件改为使用本地SPEIP表,则程序不停的出现“表或视图不存在”错误,且没有堆栈信息,不知道错误出自哪里。因SQLServer库中存在很多表,可能是程序中用到的其他的表在本地Oracle中并不存在导致;
5.CVS上最早版本的源代码的查询也是使用IPSTART等字段进行查询的;
6.一个和CVS最早版本源代码同时的SQLServer
Tomcat和IIS啥关系?!(2008-11-25 20:34)
自从进入垃圾项目以来,整天碰到各种诡异的事情。
今天的诡异事情是,每当我停止Tomcat服务(9090端口),我的IIS的网页就不能访问了(80端口)。
IE的Internet选项已经设置了“检查网页的较新版本:每次访问此页都检查”。
极其诡异,刷新也没用,删除临时文件、Cookie等均无效。
但是看到80端口还是开着的,于是按照alex的方法
telnet 127.0.0.1 80
输入
HEAD / HTTP/1.0
得到
Content-Length: 20
Content-Type: text/html
 Date: Tue, 25 Nov 2008 12:18:56 GMTDate: Tue, 25 Nov 2008 12:18:56 GMTConnection: close
发现是有返回结果的,尝试IE访问http://127.0.0.1,还是该页无法访问(若启动Tomcat服务则马上恢复正常)。点击“转到”按钮,页面出来了。再点击页面链接,还是该页无法显示,再点击转到,页面又出来了。
结论就是:IE是个没谱的东西,想准确反应情况,还是用FireFox。
配置VPN网络的好处是所有虚拟网络内的虚拟机并不会占用外部IP地址,从而可以节约大量的IP地址资源。

使用一台双网卡ubuntu810的虚拟机当作VPN网关创建一个VPN网络,方法如下:
sudo apt-get install pptpd
sqlplus /nolog
SQL> conn system/password@oraname as sysdba
首先关闭数据库:
 SQL> shutdown normal
 SQL> shutdown immediate;
查看现在的状态:
SQL> archive log list;
转换模式
SQL> startup mount;
SQL> alter database archivelog;
SQL> alter database noarchivelog;

启动数据库
SQL> alter database open;

还没高清归档模式什么用,目前我设置归档模式的现象就是每过几个小时就死机一次
(数据库服务死掉)
这样才酷
sudo apt-get install vim
sudo apt-get install exuberant-ctags
sudo vim /etc/vim/vimrc
最后加上
syntax on
set nu
set autoindent
set cindent
let Tlist_Use_Right_Window=1
let Tlist_File_Fold_Auto_Close=1 
然后可以使用如下vim命令:
:Tlist
CTRL+WW切换窗口
:q关闭 
Ctrl+N、Ctrl+P自动完成关键字
bug是怎样炼成的(2008-10-24 10:49)
我很遗憾,做软件做了这么多年,思想还是停留在代码层次上,从来没有去提高自己。
近期的代码维护工作中碰到的问题,记录。

一条导致程序崩溃的代码:
unsigned long   lFeedbacktype_id;
语句本身没有问题,关键是它出现在哪。
昨天开始,A系统的C后台程序忽然崩溃,怎么也启动不了,错误提示是:
SQL Error! SQLSTATE = 07006 Native err = 0 msg = [Oracle][ODBC]Restricted data type attribute violation.
百思不得其解,过去好好的怎么今天忽然不行了,后来尝试了删除所有相关表中的数据,程序正常了,插入了今天的数据,还是出错,导出数据查看,似乎看不出异常。试验了一下,发现如果把其中两个值为-1的字段改为0,程序就正常了。
查看对应的DTL类,发现这些出
USB硬盘上安装Ubuntu8.04(2008-10-21 13:22)
ubuntu版本:8.04 desktop
USB硬盘:80GB
电脑:IBM T42
本文的目的是在USB硬盘上划出一部分区域安装可以启动的Ubuntu操作系统。
首先在Windows下对USB硬盘重新分区,新建一个主分区给Windows用,剩余的空间保持空闲状态即可,不需要进行分区和格式化。
进入BIOS,设置启动顺序为:1.光驱/2.USB硬盘/3.硬盘
使用Ubuntu804光盘启动,正常安装,分区的界面里选择最大可用空闲空间(USB硬盘,要注意观察),grub界面里要在高级按钮中设置一下,选择USB硬盘(如:sdb)。
安装后重启,发现grub无法启动。
继续光盘启动,安装过程中点击退出,进入ubuntu桌面,修改USB硬盘上的配置文件:
/media/disk/boot/grub/menu.lst
把最后的hd0和hd1对调。(配置中是XP是hd1,ubuntu是hd0,写反了)
重启计算机,ubunut就出来了,试验成功!

注意:网络上的帖子基本都写着需要重新编译内核,那是针对老版本ubuntu说的,新版的已经不需要这样做了。
配置OpenWrt(2008-10-08 18:27)
配置OpenWrt

修改网络配置文件
vi /etc/config/network

#### VLAN configuration             
config switch eth0                  
        option vlan0    '1 2 3 4 5*'
        option vlan1    '0 5'    
                                 
                                 
#### Loopback configuration      
config interface loopb